计算机操作系统内存分配实验报告.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、实验目的 熟悉主存的分配与回收。理解在不同的存储管理方式下,如何实现主存空间的分配与 回收。掌握动态分区分配方式中的数据结构和分配算法及动态分区存储管理方式及其实现 过程。 二、实验内容和要求 主存的分配和回收的实现是与主存储器的管理方式有关的。所谓分配,就是解决多道 作业或多进程如何共享主存空间的问题。所谓回收,就是当作业运行完成时将作业或进程 所占的主存空间归还给系统。 可变分区管理是指在处理作业过程中建立分区,使分区大小正好适合作业的需求,并 且分区个数是可以调整的。当要装入一个作业时,根据作业需要的主存量查看是否有足够 的空闲空间,若有,则按需要量分割一个分区分配给该作业;若无,则作业不能装入,作 业等待。随着作业的装入、完成,主存空间被分成许多大大小小的分区,有的分区被作业 占用,而有的分区是空闲的。 实验要求使用可变分区存储管理方式,分区分配中所用的数据结构采用空闲分区表和 空闲分区链来进行,分区分配中所用的算法采用首次适应算法、最佳适应算法、最差适应 算法三种算法来实现主存的分配与回收。同时,要求设计一个实用友好的用户界面,并显 示分配与回收的过程。同时要求设计一个实用友好的用户界面,并显示分配与回收的过程。 三、实验主要仪器设备和材料 实验环境 硬件环境:PC 或兼容机 软件环境:VC++ 6.0 四、实验原理及设计分析 某系统采用可变分区存储管理,在系统运行当然开始,假设初始状态下,可用的内存 空间为 640KB,存储器区被分为操作系统分区(40KB)和可给用户的空间区(600KB)。 (作业 1 申请 130KB、 作业 2 申请 60KB、 作业 3 申请 100KB 、 作业 2 释放 60KB 、 作业 4 申请 200KB、 作业 3 释放 100KB、 作业 1 释放 130KB 、 作业 5 申请 140KB 、 作业 6 申请 60KB 、作业 7 申请 50KB) 当作业 1 进入内存后,分给作业 1(130KB),随着作业 1、2、3 的进入,分别分配 60KB、100KB,经过一段时间的运行后,作业 2 运行完毕,释放所占内存。此时,作业 4 进 入系统,要求分配 200KB 内存。作业 3、1 运行完毕,释放所占内存。此时又有作业 5 申请 140KB,作业 6 申请 60KB,作业 7 申请 50KB。为它们进行主存分配和回收。 1、采用可变分区存储管理,使用空闲分区链实现主存分配和回收。 空闲分区链:使用链指针把所有的空闲分区链成一条链,为了实现对空闲分区的分配和链 接,在每个分区的起始部分设置状态位、分区的大小和链接各个分区的前向指针,由状态 位指示该分区是否分配出去了;同时,在分区尾部还设置有一后向指针,用来链接后面的 分区;分区中间部分是用来存放作业的空闲内存空间,当该分区分配出去后,状态位就由 “0”置为“1”。 设置一个内存空闲分区链,内存空间分区通过空闲分区链来管理,在进行内存分配时, 系统优先使用空闲低端的空间。 设计一个空闲分区说明链,设计一个某时刻主存空间占用情况表,作为主存当前使用 0 基础。初始化空间区和已分配区说明链的值,设计作业申请队列以及作业完成后释放顺序, 实现主存的分配和回收。要求每次分配和回收后显示出空闲内存分区链的情况。把空闲区 说明链的变化情况以及各作业的申请、释放情况显示打印出来。 2.采用可变分区存储管理,分别采用首次适应算法、最佳适应算法和最坏适应算法实 现主存分配和回收。 3、主存空间分配 (1)首次适应算法 在该算法中,把主存中所有空闲区按其起始地址递增的次序排列。在为作业分配 存储空间时,从上次找到的空闲分区的下一个空闲分区开始查找,直到找到第一个能 满足要求的空闲区,从中划出与请求的大小相等的存储空间分配给作业,余下的空闲 区仍留在空闲区链中。 (2)最佳适应算法 在该算法中,把主存中所有空闲区按其起始地址递增的次序排列。在为作业分配 存储空间时,从上次找到的空闲分区的下一个空闲分区开始查找,直到找到一个能满 足要求的空闲区且该空闲区的大小比其他满足要求的空闲区都小,从中划出与请求的 大小相等的存储空间分配给作业,余下的空闲区仍留在空闲区链中 (3)最坏适应算法 在该算法中,把主存中所有空闲区按其起始地址递增的次序排列。在为作业分配 存储空间时,从上次找到的空闲分区的下一个空闲分区开始查找,直到找到一个能满 足要求的空闲区且该空闲区的大小比其他满足要求的空闲区都大,从中划出与请求的 大小相等的存储空间分配给作业,余下的空闲区仍留在空闲区链中。 4、主存空间回收 当一个作业执行完成撤离时,作业所占的分区应该归还给系统。归还的分区如果与 其它空闲区相邻,则应合成一个较大的空闲区,登记在空闲区说明链中,此时,相邻空闲 区的合并问题

文档评论(0)

lihuamei118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档