下载可编辑
淮 阴 工 学 院
计算机操作系统报告
姓 名 : 学 号:
班 级 :
学 院 : 计算机与软件工程学院
专 业 : 计算机科学与技术
指导教师:
2017 年 12 月
.专业 .整理 .
下载可编辑
实验一:存储器的分配与回收算法实现
一、实验内容
1. 模拟操作系统的主存分配,运用可变分区的存储管理算法设计主存分配和回收程序,
并不实际启动装入作业。
2. 采用最先适应法、最佳适应法、最坏适应法分配主存空间。
3. 当一个新作业要求装入主存时,必须查空闲区表,从中找出一个足够大的空闲区。若
找到的空闲区大于作业需要量, 这是应把它分成二部分, 一部分为占用区, 加一部分
又成为一个空闲区。
4. 当一个作业撤离时,归还的区域如果与其他空闲区相邻,则应合并成一个较大的空闲
区,登在空闲区表中。
5. 运行所设计的程序,输出有关数据结构表项的变化和内存的当前状态。
二、实验要求:
1. 详细描述实验设计思想、程序结构及各模块设计思路;
2. 详细描述程序所用数据结构及算法;
3. 明确给出测试用例和实验结果;
4 . 为增加程序可读性,在程序中进行适当注释说明;
5. 认真进行实验总结,包括:设计中遇到的问题、解决方法与收获等;
6. 实验报告撰写要求结构清晰、描述准确逻辑性强;
三、实验过程
1. 设计思想:
运用可变分区的存储管理算法设计主存分配和回收。一个新作业要求装入主存时,必须
查空闲区表,从中找出一个足够大的空闲区。若找到的空闲区大于作业需要量,这是应把
它分成二部分,一部分为占用区,加一部分又成为一个空闲区。一个作业撤离时,归还的
区域如果与其他空闲区相邻,则应合并成一个较大的空闲区,登在空闲区表中。
开始
添加并创建循环链表
确定内存块数
选择分配算法
.专业 .整理 .
下载可编辑
最先适应法 最佳适应法 最坏适应法
打印输出当前内存分
配情况
分配作业 回收内存
输入作业大小 输入回收地址及大小
输出已分配情况 分配作业
结束退出
设计思路:
利用链表对已有作业进行排序,并根据地址判断该作业状态。
2. 所用数据库结构:
循环链表
3. 测试用例和结果 :
初始内存状况 : (选择最坏适应法)
*******************************************
=开始地址 = = 大小 = = 结束地址 = = 状态 =
*