存储管理--可变分区管理 操作系统 实验报告
设计一个可变式分区分配的存储管理方案。并模拟实现分区的分配和回收过程。 对分区的管理法可以采用下面三种算法之一: 首次适应算法 循环首次适应算法 最佳适应算法 必须建立空闲区表和占用区表,回收算法考虑四种情况。 流程图按选定的算法自己完成。 三.实验源程序文件名:cunchuguanli.c 执行文件名:cunchuguanli.exe 四、实验分析: 1)本实验采用可变分区管理
区域是空闲区;另一种是“空表目”状态,表示表中对应的登记项目是空白(无效),可用来登记新的空闲区(例如,作业完成后,它所占的区域就成了空闲区,应找一个“空表目”栏登记归还区的起址和长度且修改状态)。由于分区的个数不定,所以空闲区说明表中应有适量的状态为“空表目”的登记栏目,否则造成表格“溢出”无法登记。 2、当有一个新作业要求装入主存时,必须查空闲区说明表,从中找出一个足够大的空闲区。
有时找到的空闲区可能大于作业需要量,这时应把原来的空闲区变成两部分:一部分分给作业占用;另一部分又成为一个较小的空闲区,留在空闲区表中。为了尽量减少由于分割造成的空闲区,尽可能分配低地址部分的空闲区,而尽量保存高地址部分有较大的 连续空闲区域,以利于大型作业的装入。为此,在空闲区说明表中,把每个空闲区按其地址顺序从低到高登记,即每个后继的空闲区其起始地址总是比前者大。为了方便查找还可使表格“紧缩”,总是让“空表目”项留在表格的后部。 3、采用最先适应算法(顺序分配算法)分配主存空间。
按照作业的需要量,查空闲区说明表,顺序查看登记栏,找到第一个能满足要求的空闲区。当空闲区大于需要量时,一部分用来装入作业,另一部分仍为空闲区登记在空闲区说明表中。
由于本实验是模拟主存的分配,所以把主存区分配给作业后并不实际启动装入程序装入作业,而用输出“分配情况”来代替。
4、当一个作业执行完成撤离时,作业所占的分区应该归还给系统,归还的分区如果与其它空闲区相邻,则应合成一个较大的空闲区,登记在空闲区说明表中。例如,在上述中列举的 情况下,如果作业2撤离,归还所占主存区域时,应与上、下相邻的空闲区一起合成一个大的空闲区登记在空闲区说明表中。
2)流程图:
<1> 主存回收算法

你可能喜欢
- 操作系统存储管理实验
- 首次适应算法
- 内存分配
- 操作系统进程调度算法
- 操作系统银行家算法课程设计
- 操作系统内存管理
- 动态分区分配算法
- 操作系统实验指导-虚拟存储器管理2页
- 操作系统实验6_磁盘存储空间管理5页
- 操作系统实验五 虚拟存储器管理11页
- 操作系统实验5_虚拟存储器管理6页
- 操作系统实验一可变分区存储管理7页
- 操作系统存储器管理实验报告.doc7页
- 首次适应算法,最佳适应算法,最坏适应算法3页
- 基于首次适应算法的存储器管理系统的设计源代码1页
- 首次适应算法和循环首次适应算法9页
- 首次适应算法最佳适应算法3页
- 循环首次适应算法6页
- 操作系统首次适应算法动态分配C语言代码10页
- 模拟内存分配程序4页
- 内存分配报告15页
- 动态内存分配1页
- 项目6内存分配-PDA的内存管理24页
- 计算机操作系统 内存动态分配和回收模拟实现5页
- C语言程序内存分配布局3页
- 操作系统课程设计——进程调度模拟算法(5种)16页
- 操作系统实验报告进程调度算法12页
- 操作系统课程设计之进程调度程序设计时间轮转和优先级混合算法26页
- 操作系统 时间片轮转RR进程调度算法 java版7页
- 操作系统 先来先服务FCFS和短作业优先SJF进程调度算法 java版11页
- 计算机操作系统-实验一:进程控制和调度算法5页
- 操作系统课程设计 银行家算法报告26页
- 操作系统课程设计----模拟银行家算法避免死锁11页
- 操作系统课程设计银行家算法程序8页
- 银行家算法设计-操作系统课程设计报告书17页
- 操作系统银行家算法课程设计17页
- 操作系统课程设计银行家算法13页
- 操作系统之linux_MM内存管理44页
- 第3讲 现在的操作系统怎么管理内存63页
- 第2讲 早期操作系统怎么管理内存20页
- 操作系统 第7章 内存管理29页
- 华南理工大学 操作系统课件第5章内存管理108页
- 操作系统-内存管理测验10页


