安徽工程大学 网络期末考试必备 第四章.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
安徽工程大学 网络期末考试必备 第四章

第四章 存储器管理 1、存储管理的目的 : (1)地址映射 将程序地址空间中使用的逻辑地址变换成主存中的地址的过程. (2) 主存分配 按照一定的算法把某一空闲的主存区分配给作业或进程。 (3) 存储保护 保证用户程序(或进程映象)在各自的存储区域内操作,互不干扰。 (4) 提供虚拟存储技术 向用户提供一种不受物理存储器大小和结构限制的用户编程时使用的存储器。即使在用户程序比主存容量还要大的情况下,程序也能正确运行。 2、主存管理的功能 (1)地址映射 将程序地址空间中使用的逻辑地址变换成主存中的地址的过程. (2) 主存分配 按照一定的算法把某一空闲的主存区分配给作业或进程。 (3) 存储保护 保证用户程序(或进程映象)在各自的存储区域内操作,互不干扰。 (4) 提供虚拟存储技术 向用户提供一种不受物理存储器大小和结构限制的用户编程时使用的存储器。即使在用户程序比主存容量还要大的情况下,程序也能正确运行。 4.1 存储器的层次结构 操作系统的工作就是协调三级存储器的工作。 操作系统中管理存储器的部分称为存储管理器。 任务:跟踪哪些存储器正在被使用,哪些存储器空闲,在进程需要时为它分配存储器,使用完毕后释放存储器,并且在主存无法容纳所有的进程时管理主存和磁盘间的交换。 寄存器:访问速度最快,能与CPU协调工作,价格 昂贵,容量非常小,长度一般以“字”为单 位。 主存储器:容量相对于寄存器,较大,一般以MB, 甚至GB为单位,速度相对较快,但是远 低于CPU执行指令的速度 。 高速缓存 磁盘缓存 如何装入待执行的程序及其所需的数据。 何时将程序的逻辑地址转换为物理地址。 3种装入方式:绝对装入 重定位装入 运行时动态装入 1、绝对装入: 编译后,装入前已产生了绝对地址(内存地址)。 绝对地址的产生:(1)由编译器完成,(2)由程序员编程完成。 优点:实现简单,无需进行逻辑地址到物理地址的转换。 缺点: 程序每次必须装入同一内存区; 程序员必须事先了解内存的使用情况,根据内存情况确定程序的逻辑地址; 程序的修改(增加或删除指令)将引起整个程序中指令地址的变动; 程序中的所有存储引用,例如函数调用或过程调用等,在装入之前都必须转换为物理地址,这不利于存储共享。 1、静态静态重定位 : 静态重定位是在程序装入后且在运行之前,一次将需要转换的逻辑地址转换为物理地址 2、动态重定位: 动态重定位是在程序执行期间每次访问内存之前进行重定位的。 优点:(1)程序占用的内存空间动态可变,也不必连续存放在一起;(2)比较容易实现几个进程对同一程序副本的共享使用。 缺点 :需要附加的硬件支持,增加了机器成本,而且实现存储管理的软件算法比较复杂。 4.2.2 程序的链接 1. 分区说明表 分区说明表:已分配分区表,空闲分区表。 当为作业分配主存时: 首先从空闲分区表中找一个足以容纳该作业的空闲区,若这个分区比较大,则一分为二,一部分分配给作业,另一部分仍作为空闲区留在表中。 再在已分配分区表中找一个空表目,填入新分配作业的信息。 2. 空闲区链表 为了实现对空闲分区的分配和链接,在每个空闲分区的两端设置附加信息。 (1) 状态信息: “0”表示该区空闲,“1”表示已分配。 (2) 该区的大小(以字或块为单位)。 (3) 指针:分别指向其上或其下分区的位置。通常首字指针(又叫前向指针)指向下一分区,尾字指针(又叫后向指针)指向其上一分区位置。下图给出了带有表格信息的分区格式。 所有空闲区连成一个双向链。 系统设置一个链表头指针head,指向链中第一个空闲区位置。 用空闲区链表表示: 常用的空闲区链的分配算法 首次适应(first fit)法:要求空闲分区按地址递增的次序排列。当进行内存分配时,从空闲区链首开始顺序查找,直到找到第一个能满足其大小要求的空闲区为止。分一块给请求者,余下部分仍留在空闲链中。 由此可看出,该算法是将输入的作业放置到主存里第一个足够装入它的可利用的空闲区中。 特点: 优先利用低地址部分的空闲分区,保留了高地址部分的大空闲区。 优点:当需要一个较大的分区时,有较大希望找到足够大的空闲区以满足要求。 低地址端可能留下许多很小的空闲分区,而每次查找是从低地址部分开始,会增加查找开销。 循环首次适应算法(next fit) 不是每次都从链首开始查找,而是从上次找到的空闲分区的下一个开始查找,直到找到一个能满足要求的空闲分

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档