操作系统 内存管理实验报告

同组同学学号:

同组同学姓名:

实验日期:交报告日期:

实验(No. 4 )题目:编程与调试:内存管理

实验目的及要求:

实验目的:

操作系统的发展使得系统完成了大部分的内存管理工作,对于程序员而言,这些内存管理的过程是完全透明不可见的。因此,程序员开发时从不关心系统如何为自己分配内存,而且永远认为系统可以分配给程序所需的内存。在程序开发时,程序员真正需要做的就是:申请内存、使用内存、释放内存。其它一概无需过问。本章的3个实验程序帮助同学们更好地理解从程序员的角度应如何使用内存。

实验要求:

练习一:用vim编辑创建下列文件,用GCC编译工具,生成可调试的可执行文件,记录并分析执行结果,分析遇到的问题和解决方法。

练习二:用vim编辑创建下列文件,用GCC编译工具,生成可调试的可执行文件,记录并分析执行结果。

练习三:用vim编辑创建下列文件,用GCC编译工具,生成可调试的可执行文件,记录并分析执行结果。

改编实验中的程序,并运行出结果。

实验设备:多媒体电脑

实验内容以及步骤:

在虚拟机中编写好以下程序:

#include #include #include

int main(void)

{

char *str;

/* 为字符串申请分配一块内存*/

if ((str = (char *) malloc(10)) == NULL)

{

printf("Not enough memory to allocate buffer\n");

return(1); /* 若失败则结束程序*/

}

/* 拷贝字符串“Hello”到已分配的内存空间*/

strcpy(str, "Hello");

/* 显示该字符串*/

printf("String is %s\n", str);

/* 内存使用完毕,释放它*/

free(str);

return 0;

}

调试过后得出的结果截图如下:(由图可看出我将此程序以aa.c为文件名保存,调试后出现aa1文件,调试结果出现语句“String is Hello”)

相关推荐
相关主题
热门推荐