实验三 主存空间的分配与回收_第1页
实验三 主存空间的分配与回收_第2页
实验三 主存空间的分配与回收_第3页
实验三 主存空间的分配与回收_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验三 主存空间的分配与回收一、实验目的熟悉主存的各种分配与回收。通过本实验,帮助理解在采用可变式分区管理方式下,如何实现主存空间的分配与回收。二、实验内容采用可变式分区管理方式,使用首次适应算法实现主存的分配与回收。空闲区采用分区说明表。三、实验原理表3-1 空闲区说明表起始地址长度状态45K20KB未分配110K146KB未分配空表目空表目空表目空闲区2(146KB)作业2(45KB)空闲区1(20KB)作业4(25KB)作业1(10KB)操作系统 (10KB)256K110K65K45K20K10K0图3-1 主存空间占用情况1.可变式分区管理是指在处理作业过程中建立分区,使分区大小正好

2、适合作业的需要,并且分区个数是可以调整的。当要装入一个作业时,根据作业需要的主存量,查看是否有足够的空闲空间,若有,则按需求量分割一部分给作业;若无,则作业等待。随着作业的装入、完成,主存空间被分割成许多大大小小的分区。有的分区被作业占用,有的分区空闲。例如,某时刻主存空间占用情况如图3-1所示。为了说明哪些分区是空闲的,可以用来装入新作业,必须要有一张空闲区说明表,如表3-1所示。其中,起始地址指出各空闲区的主存起始地址,长度指出空闲区大小。状态未分配:该栏目是纪录的有效空闲区空表格:没有登记信息由于分区个数不定,所以空闲区说明表中应有足够的空表项目。否则造成溢出,无法登记。同样,再没一个已

3、分配区表,记录作业或进程的主存占用情况。2.当有一个新作业要求装入主存时,必须查空闲区说明表,从中找出一个足够大的空闲区。有时找到的空闲区可能大于作业需求量,这时应将空闲区一分为二。一个分给作业;另一个仍作为空闲区留在空闲区表中。为了尽量减少由于分割造成的碎片,尽可能分配低地址部分的空闲区,将较大空闲区留在高地址端,以利于大作业的装入。为此在空闲区表中,按空闲区首地址从低到高进行登记。为了便于快速查找,要不断地对表格进行紧缩,既让“空表目”项留在表的后部。其分配框图如图3-2所示。申请XK主存J=0J=J+1查看第J个表目的登记项NY开 始图3-2 首次适应算法分配框图状态为“未分配”吗?长度

4、>=XK?YJ为空闲区说明表的最后一个表目?小于N置状态为“空表目”等于将空表目向后移长度长度XK始址始址+XK大于登记已分配区表和空闲区表,输出系统中各数据结构的值。返回分配给作业的主存始址。作业等待返 回3.当一个作业执行完成时,作业所占用的分区应归还给系统。在归还时要考虑相邻空闲区合并的问题。作业的释放区与空闲区的邻接分以下4种情况考虑:A、释放区下邻(低地址邻接)空闲区;B、释放区上邻(高地址邻接)空闲区;C、释放区上下都与空闲区邻接;D、释放区与空闲区不邻接。首次适应算法回收框图如图3-3所示。四、实验要求请按首次适应算法设计主存分配和回收程序。以图3-1作为主存当前使用的基础,初始化空闲区和已分配区说明表的值。学生自己设计一个作业申请队列以及作业完成后的释放顺序,实现主存的分配与回收。把空闲区说明表的变化情况以及各作业的申请、释放情况显示或打印出来。实验报告按以下格式完成:一、实验目的二、实验

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论