山东科技大学学生课程设计
三、内存分配与跟踪
3.1需求分析
内存管理问题的总体目标:在Windows的开发环境下,利用所学C++语言和数据结构的相关知识,利用程序实现内存管理问题的输出,以帮助我们更好的理解和应用进程同步的原理。 3.1.1设计目的 从不同侧面了解 Windows 2000/XP 对用户进程的虚拟内存空间的管理、分配方法。同时需要了解跟踪程序的编写方法(与被跟踪程序保持同步,使用 Windows提供的信号量)。对Windows分配虚拟内存、改变内存状态,以及对物理内存(physical memory)和页面文件(pagefile)状态查询的 API 函数的功能、参数限制、使用规则要进一步了解。 3.1.2原理分析
Windows 进程的虚拟地址空间中也有三种状态的页面:空闲页面、保留页面和提交页面。空闲(Free)页面:空闲页面是指那些可以保留或提交的可用页面。保留(Reserved)页面:保留页面是逻辑页面已分配但没有分配物理存储的页面。设置这种状态的效果是可以保留一部分虚拟地址,这样,如果不预先释放这些地址,就不能被其他应用程序(如 Malloc,LocalAlloc 等)的操作所使用。试图读或写空闲页面或保留页面将导致页面出错异常。保留页面可被释放或提交。提交(Committed)页面:提交页面是物理存储(在内存中或磁盘上)已被分配的页面。可对它加以保护,不许访问或允许只读访问,或允许读写访问。提交也可以被回收以释放存储空间,从而变成保留页面。
在本实验中,首先创建工程(IN)生成随机输入文件,其中包含对内存要求作的各种操作;然后创建工程MemoryAllocation,实现输入文件所要求的各项内存管理操作。
3.2概要设计
13
山东科技大学学生课程设计
3.3详细设计
3.3.1 设计思想
3.3.2 模块设计
3.4调试分析
3.5用户使用说明
14
山东科技大学学生课程设计
四、磁盘调度算法模拟
4.1需求分析
4.2概要设计
4.3详细设计
4.3.1 设计思想
4.3.2 模块设计
4.4调试分析
4.5用户使用说明
15
山东科技大学学生课程设计
五、
5.1需求分析
5.2概要设计
5.3.1 设计思想
5.3.2 模块设计
5.3详细设计
5.4调试分析
5.5用户使用说明
16
山东科技大学学生课程设计
六、课程设计总结
800字以上
17