- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
16 2009 操作系统第16讲:第5章 存储管理(固定分区管理)
* * 操作系统第16讲 第5章 主存储器管理 (续2, 固定分区管理) 主讲:闫新庆 2012-05 * * 5.2 分区存储管理模式(连续模式1) 导语:分区管理是把内存划分成若干个大小不等的区域,除操作系统占用一个区域之外,其余由各并发进程共享。分区管理是满足多道程序设计的一种最简单的存储管理方法。 一、单一分区存储管理模式(连续模式1) 1.单一指任何时候内存中只存放一个用户程序,程序在内存中完整、连续地存放。 2. OS区+用户区,装入后的物理地址是不变的。剩余的存储区供OS或用户区扩充。 3.只有一个分区 * * 5.2 分区存储管理 (连续模式1) 一、单一分区存储管理模式(连续模式1) 3 .特点 ●一次只有1个作业装入内存。●作业大小受内存限制。●程序在内存呈连续分布 4.优点 ●系统效率高● OS简单,只需要一点寄存器●无并发程序带来的负作用 5.缺点 ●程序大小受内存限制●内存无共享性,小程序浪费空间●不能进行多道程序计算,效率低●对内存保护不力,如果系统区受到破坏,会导致系统瘫痪 * * 5.2 分区存储管理(连续模式2) 二、固定分区模式(静态分区--事先分区法) 由OS管理员或OS依据划分原则把内存区固定地划分为若干个大小不等的区域。分区一旦划分结束,在整个执行过程中每个分区的长度和内存的总分区个数将保持不变。 1.特点 ●由OS管理员或系统将内存划分为几个大小相当的区域。 ●划分后的区域,可以装入小于内存区的作业,不考虑作业的大小和实际需要,划分区域的大小可以不等或均等。 2.装入:由OS装入 3.内存分配与回收 ●根据分区表进行分配管理, 如图5.6所示 * * 5.2 分区存储管理(连续模式2) 二、固定分区模式(续1) 图5.6 固定分区法 区号 大小(字节) 起始地址 状态 1 8KB 100KB 1(占用) 2 32KB 200KB 1(释放) 3 ? 300KB 0 4 128KB 400KB 1 5 ? 500KB 0 6 ? 600KB 0 …. ? ….. … (a) 分区说明表(定长与非定长) * * 5.2 分区存储管理模式(连续模式2) 二、固定分区模式(续…1) 系统对内存的管理和控制通过分区说明表进行,内存的分配、释放、存储保护以及地址变换等都通过分区说明表进行。固定分区时的分配算法如左图所示 图5.10 固定分区分配算法 是 状态位=0? 作业J申请xk主存 j:=0 查看分区 说明表第j个表目 装入作业J 无法分配,作业J等待 置状态位=1 填入作业名J j:=j+1 J为分区表的 最后一个表目 分区长度=xk? 是 是 否 否 * * 5.2 分区存储管理(连续模式3) 三、动态分区模式(事中分区法,线性状态) ●背景:动态分区法在作业执行前并不建立分区,分区的建立是在作业的处理过程中进行的,且其大小可随作业或进程对内存的要求而改变。这就改变了固定分区法中那种即使是小作业也要占据大分区的浪费现象,从而提高了内存的利用率 ●基本原理:采用动态分区法,系统初启时,除了操作系统中常驻内存部分之外,只有一个空闲分区。随后,分配程序将该区依次划分给调度选中的作业或进程。图5.7给出了FIFO调度方式时的内存初始分配情况。 * * 5.2 分区存储管理(连续模式3) ●期初装入:按照作业或程序的大小分配,内存得到最大的利用。 图5.7 按FIFO调度内存初始分配情况 * * 5.2 分区存储管理(连续模式3) 三、动态分区模式(续2) ●后续装入:第2次以后的反复装入进程的过程中,随着进程的执行,出现一系列的分配和释放,会形成许多碎片。回收内存时,回收分区与邻接空闲分区合并。 ●分配管理: ◆分区说明表 ◆分区自由链+内存资源请求表。 ●注意固定分区说明表和动态分区说明表的差别 * * 5.2 分区存储管理(连续模式3) 三、动态分区模式(续3) 图5.8 内存分配变化过程 * * 5.2 分区存储管理(连续模式3) 三、动态分区模式(续4) 图5.9 可用表、自由链及请求表 (a)非定长分区说明表 ? * * 5.2 分区存储管理(连续模式3) 三、动态分区模式(续5) ●动态分区说明表的大小难以确定,要占用一部分内存。 ●自由链则是利用每个内存空闲区的头几个单元存放本空闲区的大小及下个空闲区的起始地址,从而把所有的空闲区链接起来。然后,系统再设置一自由链首指针让其指向第一个空闲区,通过链首指针查到所有的空闲区。采用自由链法管理空闲区,查找时要比可用表困难,但由于自由链指针是利用的空闲区自身的单元,所以不必占用额外的内存区。请求表的每个表目描述请
文档评论(0)