操作系统简明教程PPT第3章1_第1页
操作系统简明教程PPT第3章1_第2页
操作系统简明教程PPT第3章1_第3页
操作系统简明教程PPT第3章1_第4页
操作系统简明教程PPT第3章1_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1 第3章存储器管理 2 3 1存储管理概述3 2分区式存储管理3 3覆盖和对换3 4分页存储管理3 5请求分页存储管理3 6分段存储管理3 7段页式存储管理 3 本章主要内容 主要是对内存的管理如何使内存得到充分 有效的利用如何为用户提供方便的内存使用方法 4 3 1存储管理概述3 1 1存储管理的概念程序处理的典型过程 取指 译码 取操作数 计算得结果根据存储地址实现任务 要有效管理存储器的内存空间 大容量内存空间的追求 5 内存管理的主要任务 合理地建立用户程序与内存空间的对应关系 为各道程序分配内存空间 运行完成后再予以回收 而且始终要保证系统程序和各用户程序安全 存储管理的功能P11 内存分配 内存保护 地址映射 内存扩充 内存分配 内存保护 地址映射 内存扩充 内存分配 6 3 1 2地址重定位1 地址空间和存储空间名空间相对地址 逻辑地址 虚地址程序的逻辑地址空间 地址空间 物理地址 物理地址空间 存储空间 7 2 地址的重定位地址的重定位 当一个逻辑地址空间的程序装入到物理地址空间时 由于两个空间不一致 需要进行的地址映射 两种方式 静态重定位动态重定位静态重定位是在程序装入内存 开始执行之前进行地址重定位 静态重定位工作通常是由装配程序完成的 8 优点 容易实现 无需硬件支持 它只要求程序本身是可重定位的 即对那些要修改的地址部分具有某种标识 地址重定位由专门设计的程序来完成 缺点 是程序经地址重定位后就不能移动了 因而不能重新分配内存 不利于内存的有效利用 9 动态地址重定位是在程序执行期间 在每次存储访问之前进行的 在这种情况下 通常通过基地址寄存器 变址寄存器计算出指令的有效地址 再利用硬件机构实现地址映射 这样的硬件设备称为存储管理单元MMU Memory ManagementUnit 通常采用的办法是利用一个重定位寄存器 对每一个有效地址都要加上重定位寄存器中的内容 以形成绝对地址 10 优点 程序在内存中的搬移不会对程序的正确执行造成影响 使内存得以被充分利用缺点 需要附加的硬件支持 实现存储管理的软件算法比较复杂 11 3 1 3虚拟存储器概念的引入 一系列措施外存一部分当内存来用 使内存扩大对用户透明比实际大得多的存储器 虚拟存储器主要介绍请求分页和请求分段存储管理方式 12 3 2分区式存储管理时期广泛使用包括 单一连续分配 分区分配分区分配 固定分区 动态分区 动态重定位分区 13 3 2 1单一连续分配主要用于单用户单任务操作系统 如DOS 实施方案 1 内存分配 整个内存划分为系统区和用户区 2 地址映射 物理地址 用户区基地址 逻辑地址 3 内存保护 基址寄存器 界限寄存器 越界中断信号 14 3 2 2固定式分区分配应多道程序的存储管理而产生 固定 分区数目和分区大小固定 1 内存分配 回收 分区说明表 由系统建立 15 2 地址映射 物理地址 分区始址 逻辑地址 3 内存保护 分区始地址 逻辑地址与所给分区大小相比较缺点 内存空间的利用率低有较多碎片右图只25 利用率 16 3 2 3动态分区分配可变式分区分配的策略在进程装入和处理过程中建立分区 并要使分区的容量能正好适应进程的大小 内存分区数目 进程数目分区的大小 各个进程的大小1 动态分区的配过程各空闲分区 空闲分区链分区说明表 17 图3 6空闲分区链 18 图3 7动态分区流程 19 2 动态分区分配算法1 首次适应算法 FF FirstFit 空闲分区链以地址递增的顺序链接 分配时从链首开始查找 找到第一个大小可以满足的分区为止 低地址由于被划分的可能性比较大 容易形成多个过小分区而难以利用 成为外部碎片 同时这些小分区增加了查寻时的判断时间 降低了效率 20 2 循环首次适应算法为了改变首次适应算法每次从链首开始查寻造成的缺陷 可以增加一个起始查寻指针 指向下一次开始查寻时的起始分区 在查寻过程中 该指针向后移动 当移动到最后一个空闲分区后 重新回到链首 这种方法可以使内存区分配比较平均 减少查寻次数 但又造成了缺少大空闲分区 使得大进程无法进入 21 3 最佳适应算法空闲分区链按照分区容量递增的方式形成 分配时从链首开始查找 平均查找次数为分区数的一半 也就是说它是 最佳适应 的 这种方法所造成的剩余分区又肯定是相对最小的 通常难以利用 甚至我们可以说 每次分配一个分区都会造成一个无法再利用的 碎片 而这些 碎片 的总容量可能是比较大的 22 4 最差适应算法并非 最差 空闲分区链按照分区容量递减的方式形成 分配时从链首开始 若链首分区大小不满足 则可以肯定不存在能够满足要求的分区 否则对链首分区进行划分 剩余空间成为 碎片 的可能性肯定是最小的 具有查找速度快 分区碎片少的优点 但又会产生缺少大分区的缺点 23 首次适应算法是最简单 而且是最快和最好的算法 循环首次适应算法比首次适应算法稍差一些最佳适应算法虽然名字中有 最佳 但实际上是性能最差的 最差适应算法并非 最差 但在某些应用情况下 上述比较结果会有所变化 24 3 动态分区的回收 25 3 2 4动态重定位分区分配碎片问题 紧凑 方法思考 是否每回收一个分区就进行紧凑 动态重定位分区分配 动态分区 紧凑 26 3 2 5分区分配方案的评价地址映射 物理地址 分区始地址 逻辑地址 分区始地址固定分区分配 基址寄存器 动态分区分配 基址寄存器 动态重定位分区分配 重定位寄存器 内存保护 基址寄存器 和 限长寄存器 或下限寄存器和上限寄存器 27 分区分配方案的主要优点可归纳如下 1 多道程序下的内存共享 改善了系统吞吐量 在内存利用率方面 从固定式分区到动态分区 再到动态重定位分区依次提高 2 相对于后面介绍的存储管理方式 为实现分区分配所使用的数据结构占用的存储容量相对较少 算法也相对简单 3 实现存储保护的措施也比较简单 28 分区分配的主要缺点有 1 内存仍不能充分利用 除了动态重定位式分区法外 都存在着严重的碎片问题 2 不能实现对内存的扩充 因此进程的大小受到内存可用

温馨提示

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

评论

0/150

提交评论