计算机操作系统教程第二版课件2012版 第4章 存储管理

上传人:f****u 文档编号:123119893 上传时间:2020-03-08 格式:PPT 页数:73 大小:1.10MB
返回 下载 相关 举报
计算机操作系统教程第二版课件2012版 第4章 存储管理_第1页
第1页 / 共73页
计算机操作系统教程第二版课件2012版 第4章 存储管理_第2页
第2页 / 共73页
计算机操作系统教程第二版课件2012版 第4章 存储管理_第3页
第3页 / 共73页
计算机操作系统教程第二版课件2012版 第4章 存储管理_第4页
第4页 / 共73页
计算机操作系统教程第二版课件2012版 第4章 存储管理_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《计算机操作系统教程第二版课件2012版 第4章 存储管理》由会员分享,可在线阅读,更多相关《计算机操作系统教程第二版课件2012版 第4章 存储管理(73页珍藏版)》请在金锄头文库上搜索。

1、醉雪 风风随心动动 第4章 存储储管理 n4 1 存储管理的功能 n4 2 实存管理 n4 3 虚拟存储器管理 n4 4 碎片与抖动问题 醉雪 风风随心动动 本章学习目标 n存储储管理的目的和四大基本功能 n 实实存管理中讲讲述了固定分区存储储管理 可 变变式分区存储储管理 纯纯分页页存储储管理三种 存储储管理方案的实现实现 原理 内存的分配与 回收方法 n虚存管理以请请求式分页页存储储管理为为重点 讲讲述其实现实现 原理和动态动态 地址重定位过过程 n总结总结 各种存储储管理方案中存在的碎片和抖 动问题动问题 及解决方法 醉雪 风风随心动动 4 1 存储管理的功能 n4 1 1 内存的分配与

2、回收 n4 1 2 地址重定位 n4 1 3 存储保护 n4 1 4 虚拟存储器 返回首页 图 4 1 多级存储器体系示意图 醉雪 风风随心动动 4 1 1 内存的分配与回收 n内存分配按分配时机的不同 可分为两种方式 1 静态存储分配 2 动态存储分配 返回本节 醉雪 风风随心动动 4 1 2 地址重定位 n1 内存空间 或物理空间 n2 逻辑空间 如图4 2所示 n3 地址重定位 分为 静态地址重定位和动态地址重定位 图 4 2 作业的名空间 逻辑地址空间和装入后的物理空间 图 4 3 静态地址重定位和动态地址重定位示意图 b 采用动态重定位时内存空 间及地址重定位示意图 a 采用静态重定

3、位后的内存空间 返回本节 醉雪 风风随心动动 4 1 3 存储保护 1 上 下界存储保护 上 下界保护是一种简单的存储保护技术 如图4 4 a 所示 2 基址 限长存储保护 上 下界保护的一个变种是采用基址 限长存储 保护 如图4 4 b 所示 a 上 下界保 b 基址 限长保护 图 4 4 界限寄存器的两种存储保护方式 返回本节 醉雪 风风随心动动 4 1 4 虚拟存储器 n虚拟存储技术的基本思想是把有限的内存空间与大容量的外存统一管理起来 构成一 个远大于实际内存的 虚拟的存储器 即把两级存储器当作一级存储器来看待 n对用户而言 感觉到系统提供了一个大容量的内存 供用户使用 但这样大容量的

4、内 存实际上并不存在 是一种虚拟的存储器 因此把具有这种功能的存储管理技术称为 虚拟存储管理 返回本节 醉雪 风风随心动动 4 2 实存管理 n4 2 1 固定分区存储管理 n4 2 2 可变式分区存储管理 n4 2 3 纯分页存储管理 n 4 2 4 纯分段存储管理 返回首页 醉雪 风风随心动动 4 2 1 固定分区存储管理 n固定分区存储管理是实现多道程序设计的最简单的一种存储管理技术 n其基本思想是 在作业未进入内存之前 就由操作员或操作系统把内存可用空间划分 成若干个固定大小的存储区 除操作系统占用一个区域外 其余区域为系统中多个用 户共享 因为在系统运行期间 分区大小 数目都不变 所

5、以固定式分区也称为静态 分区 如图4 5所示 图 4 5 固定式分区内存分配示意图 a 和 b 固定式分区说明表 返回本节 醉雪 风风随心动动 4 2 2 可变式分区存储管理 n1 空闲分区的组织形式 n2 内存的分配与回收 n3 常用的分配算法 n4 可变式分区的地址重定位 图 4 6 可变式分区内存使用情况示意图 醉雪 风风随心动动 1 空闲闲分区的组织组织 形式 n在可变式分区存储管理中 常把空闲区组成空闲分区表或空闲分区链表的形式 n空闲分区链表的组织是这样的 在每个空闲分区的起始部分开辟出一个单元 存放一 个链表指针和该分区的大小 链表指针指向下一个空闲分区 图 4 7 首次适应算法

6、的空闲分区链表组织形式 醉雪 风风随心动动 2 内存的分配与回收 n当某一个用户作业完成释放所占分区时 系统应进行回收 在可变式分区中 应该检 查回收区与内存中前后空闲区是否相邻 若相邻 则应进行合并 形成一个较大的空 闲区 并对相应的链表指针进行修改 若不相邻 应将空闲区插入到空闲区链表的适 当位置 醉雪 风风随心动动 3 常用的分配算法 n 1 首次适应算法 2 最佳适应算法 3 最差适应算法 图 4 8 最佳适应算法的空闲分区链表组织形式 图 4 9 最差适应算法的空闲分区链表组织形式 图 4 10 内存使用情况 图 4 11 用三种适应算法处理同一作业序列 醉雪 风风随心动动 4 可变

7、变式分区的地址重定位 n可变式分区的地址重定位可采用静态重定位 也可采用动态重定位 采用动态重定位 的可变式分区管理技术 在执行内存分配时 如无足够大空闲块 应考虑实现紧凑操 作 其分配算法如图4 12所示 n可变式分区的存储保护可采用基址 限长存储保护方式 图 4 12 采用动态重定位的可变式分区分配算法 返回本节 醉雪 风风随心动动 4 2 3 纯分页存储管理 n1 纯分页存储管理中存储块的分配与回收 n2 纯分页存储管理的地址重定位问题 n3 联想存储器 n4 存储保护 返回本节 醉雪 风风随心动动 1 纯纯分页页存储储管理中存储块储块 的分配与回收 n纯分页存储管理中 存储块的分配与回

8、收算法比较简单 当作业有存储分配请求时 可以根据逻辑地址的大小计算出需要多少存储块 然后将空闲块分配给它们使用 通 常有两种记录空闲存储块的方法 位图法和链表法 操作系统 操作系统 作业1 作业2 作业2 作业1 作业2 作业1 作业2 11101001 10101010 a 存储块使用情况 b 存储块使用情况的位图表示 图 4 13 存储块的位图管理法 醉雪 风风随心动动 2 纯纯分页页存储储管理的地址重定位问题问题 n要使不连续的 分散的用户程序能正常运行 须采用动态地址重定位 此时 可采用 重定位寄存器方式 如分页太多 则重定位寄存器用得太多 n通常可在内存中为每个作业开辟一块特定区域

9、建立起作业的逻辑页与存储块之间的 对应表格关系 这种表常称为页面映像表 简称页表 如图4 14 4 15所示 图 4 14 纯分页存储管理示意图 图 4 15 纯分页存储管理地址重定位实现过程 醉雪 风风随心动动 3 联联想存储储器 n为了提高查表的速度 人们在分页地址变换机构中 加入一组高速缓冲存储器 用来 存放当前作业的最常用的页号和与之相应的物理块号 一般称这样的寄存器组为快表 或联想存储器 采用联想存储器和内存中页表相结合的分页地址变换过程如图 4 16所示 n应用联想存储器和页表相结合的方式 可有效地提高系统动态地址转换的速度 是一 种行之有效的方法 利用快表查找 利用页表查找 利用

10、页表中查找到的页号 块号更新快表 图 4 16 采用快表和页表相结合的分页地址变换过程示 意图 醉雪 风风随心动动 4 存储储保护护 n存储信息保护可从两个方面实现 n在进行地址变换时 产生的页号应小于页表长度 否则视为越界访问 这类似于基址 限长存储保护 n可在页表中增加存取控制和存储保护的信息 对每一个存储块 可允许四种保护方式 禁止做任何操作 只能执行 只能读 能读 写 当要访问某页时 先判断该页的存取控制和存储保护信息是否允许 返回本节 醉雪 风风随心动动 4 2 4 纯分段存储管理 n1 分段管理的基本思想 n2 地址变换 n3 分段与分页的区别 返回本节 醉雪 风风随心动动 1 分

11、段管理的基本思想 n分段存储管理是以段为基本单位分配内存 且每一段必须连续的内存空间 但各段之 间不要求连续 由于各段的长度不一样 所以分配的内存空间大小也不一样 分段存 储管理的逻辑地址结构如下 段号S段内位移W 2 地址变换变换 图 4 17 分段存储管理的地址变换示意图 表4 1 段表 段号内存起始地址段长 0210500 1235020 210090 表4 2 逻辑地址 段号段内位移 0430 110 2500 醉雪 风风随心动动 3 分段与分页页的区别别 1 页是信息的物理单位 段是信息的逻辑单位 2 分页存储管理的作业地址空间是一维的 而分段存储管理的是二维的 3 页的大小固定且由

12、系统确定 是等长的 而段的长度不定 它是由具有相对完整意义 的信息长度确定 4 分页的优点体现在内存空间的管理上 而分段的优点体现在地址空间的管理上 返回本节 醉雪 风风随心动动 4 3 虚拟存储器管理 n4 3 1 虚拟存储器的概念 n4 3 2 请求式分页存储管理与动态地址重定位 n4 3 3 页面置换算法 n4 3 4 请求式分页存储管理性能分析举例 n4 3 5 请求式分段存储管理与动态地址重定位 n4 3 6 段页式存储管理与动态地址重定位 返回首页 醉雪 风风随心动动 4 3 1 虚拟存储器的概念 n虚拟存储器就是为用户提供了一个存储容量比实际主存大得多的存储器 n用户在编程时可以

13、不考虑实际内存的大小 认为自己编写多大程序就有多大的虚拟存 储器对应 每个用户可以在自己的逻辑地址空间中编程 在各自的虚拟存储器上运行 n采用虚拟存储管理技术 提供存储扩充的功能 返回本节 醉雪 风风随心动动 4 3 2 请求式分页存储管理与动态地址重定位 n先把内存空间划分成大小相等的块 将用户逻辑地址空间划分成与块相等的页 每页 可装入到内存中任一块中 这都类似于纯分页式存储管理 在请求式分页存储管理的 地址重定位时 可能会出现所需页面不在主存的情况 如图4 18所示是请求式分 页存储管理的存储映像 n请求式分页存储管理中的地址重定位和缺页中断处理过程如图4 19所示 图 4 18 请求式

14、分页存储管理示意图 图 4 19 请求式分页存储管理缺页中断处理过程示意图 返回本节 醉雪 风风随心动动 4 3 3 页面置换算法 n1 最优算法 OPT算法 n2 先进先出算法 FIFO算法 n3 最久未使用页面置换算法 LRU算法 n4 LRU近似算法 醉雪 风风随心动动 1 最优算法 OPT算法 n最理想的页面置换算法是 从内存中移出以后不再使用的页面 如无这样的页面 则 选择以后最长时间内不需要访问的页 这就是最优算法的思想 醉雪 风风随心动动 2 先进进先出算法 FIFO算法 n这种算法的基本思想是 总是先淘汰那些驻留在内存时间最长的页面 即先进入内存 的页面先被置换掉 理由是 最先

15、进入内存的页面不再被访问的可能性最大 这种算 法实现起来比较简单 如图4 20所示 图 4 20 先进先出算法存储分块表构造 醉雪 风风随心动动 3 最久未使用页页面置换换算法 LRU算法 n这种算法的基本思想是 如果某一页被访问了 那么它很可能马上又被访问 反之 如果某一页很长时间没有被访问 那么最近也不太可能会被访问 这种算法考虑了程 序设计的局部性原理 其实质是 当需要置换一页时 选择在最近一段时间最久未使 用的页面予以淘汰 醉雪 风风随心动动 4 LRU近似算法 n这种算法 只要在存储分块表 或页表 中设一个 引用位 当存储分块表中的某 一页被访问时 该位由硬件自动置1 并由页面管理软

16、件周期性把所有引用位置0 这样 在一个时间周期T内 某些被访问过的页面其引用位为1 而未被访问过的页 面其引用位为0 n根据引用位的状态来判别各页面最近的使用情况 当需要置换一页面时 选择其引用 位为0的页 如图4 21 4 22所示的算法 图 4 21 LRU近似算法流程 图 4 22 LRU近似算法举例 返回本节 醉雪 风风随心动动 4 3 4 请求式分页存储管理性能分析举例 n1 程序设计的质量 n2 页面的大小 n3 分配的内存块数 n4 页面置换算法性能 如图4 24 4 24所示 图 4 23 FIFO算法性能分析 m 3 图 4 24 FIFO算法性能分析 m 4 图 4 25 LRU算法性能分析 m 3 图 4 26 LRU算法性能分析 m 4 返回本节 醉雪 风风随心动动 4 3 5 请求式分段存储管理与动态地址重定位 n1 程序的逻辑地址结构 n2 段表 n3 请求式分段动态地址变换过程 n4 请求式分段存储管理的优 缺点 图 4 27 分段的逻辑地址空间 1 程序的逻辑逻辑 地址结结构 n请求式分段存储管理的逻辑地址结构由段号s和段内位移量d组成 如下图所示 用

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号