4存储管理课件教材编辑.pptVIP

  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文档。上传文档
查看更多
4存储管理课件教材编辑.ppt

最理想状态:主存速度快、容量大、价钱便宜 为追求更高性价比,通用计算机中,存储层次至少有三层(由高到低):cpu寄存器、主存、辅存 又可细分为:寄存器、高速缓存、主存、磁盘缓存、固定磁盘、可移动存储介质。 前四项属于os存储管理范畴、断电丢失;后两项属于os设备管理范畴,信息可长久保存。 本章主要介绍内存管理。 ;存储管理任务;;存储分配步骤: 首先,根据系统的内存分配算法,在空闲的内存分区中寻找一块满足进程需要的内存空间,将其分配给进程。 然后更新进程的资源分配清单,内存分配情况清单等数据结构(占用的增加,空闲的减少) 内存的回收 更新相应的数据结构,将回收的内存空间标识为“空闲可用”。 该内存空间是否可以被回收? 是否被其他进程共享 是否属于相应进程 是否与相邻的空闲空间进行合并(跟所采取的存储管理技术???关);2、地址映射(地址转换);3、存储保护;4、存储共享;共享数据: 通过存储共享完成通信的过程。 一个进程将数据写入共享存储区,另一个进程从共享分区中读出数据。 共享代码: (例:打开几个word程序,word程序区域对应着相同一段共享代码) 共享代码须实现: (1)程序可重入:设计程序时,逻辑上将程序代码区和数据分开。(可以被多个进程重复执行的,只读代码) (2)代码区不包含运行程序时需要改变的数据区,被处理的数据都放在独立的数据区,这样,进程执行进程中就不会改变代码部分的任何内容。 (3)数据是单独的一个段,堆栈式动态申请的分区,或通过参数传递;创建新进程时,不需要为该进程的代码部分另外申请内存空间,只需将该进程PCB中的进程代码空间的地址指向已有的代码空间的地址。 进程的数据区,要么等到os为其分配相应存储空间后,将数据区地址填写在PCB中,要么由进程运行时向os动态申请。 对于高级程序设计而言,只要相应的编译程序支持可重入的程序设计,那么设计程序时就不需要考虑程序的代码和数据严格分开,编译程序在编译时,会自动将欲处理的数据与程序代码分开存储,以保证代码部分是纯的可重入的 ;存储扩充;;存储管理的总目标是为进程分配存储区,可涉及到:;本章目录;4.1 存储管理预备知识 ;4.1.2 地址重定位 ;.; 即在程序装入内存之前,程序指令中的地址就已经是绝对地址,已经正确地反映了它将要进入的存储区位置。; 静态重定位在装入时一次性集中把程序指令中所有地址全部加以重定位;动态重定位则是每执行一条指令时,才其地址加以重定位。 ;4.1.3 程序的链接 ; 可把对程序段的链接编辑工作推迟到程序执行时进行:遇到外部引用时,才对所涉及的程序段进行链接编辑工作,才将这段程序纳入到统一的地址空间中。由于这样的链接编辑工作是在程序运行时根据需要进行的,因此称为“动态链接”。 ; 用户区分为“使用区”和“空闲区”两部分,如图(b)所示。使用区是用户作业程序真正占用的连续存储区域;空闲区是分配给了用户、 但未被用户使用的区域,称为“内部碎片”。 ; 每次只能有一个作业进入内存,故不适用于多道程序设计,整个系统的工作效率不高,资源利用率低下; ;2.;.;4.2.2 可变分区存储管理 ; 随着作业对 存储区域的不断 申请与释放,发 展趋势是:分区 的数目会逐渐增 加,有的分区尺 寸在逐渐减小, 甚至有可能出现 内存里有空闲区、但每个都满足不了作业程序的要求而无法分配出去的情形。在存储管理中,把那些无法满足作业存储请求的空闲区称为“外部碎片”。 ; 为记录内存中的分区尺寸和类型,系统设置“已分配表”和“空闲区表”。 ; 操作系统开辟一个单元,存放第1个空闲分区的起始地址,成为“链首指针”。最后一个空闲分区的next中存放标志“NULL” 表明它是最后一个。这 样,系统中的所有空闲 分区被连成为一个链表。 图(b)所反映的是图 (a)当前内存中空闲 区的链表。 ;双链表法 ;可变分区管理中空闲区的合并 ;4、可变分区管理空闲分区的分配方案;首次适应算法FF。 基本思想:总是从内存的某一端(一般从低地址端)开始查找 ,选择一个超过进程申请大小的空闲分区。 为此,可以将空闲分区表中登记的空闲分区按照其起始地址由小到大的次序排列。系统查找空闲分区从表头开始查找,取第一个满足要求的分区配给进程。若找到的空闲分区恰好与进程申请的存储空间大小相等,或分配给该进程以后,仅剩下一个非常小的空间(小于系统设置的阈值),则将该分区全部分配给申请进程。 否则,系统将该分区划分为两个分区,一个分区的长度等于进程申请的空间大小,并将其分配给申

文档评论(0)

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

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

1亿VIP精品文档

相关文档