高中信息技术存储管理课件

上传人:ji****72 文档编号:51023381 上传时间:2018-08-12 格式:PPT 页数:72 大小:652KB
返回 下载 相关 举报
高中信息技术存储管理课件_第1页
第1页 / 共72页
高中信息技术存储管理课件_第2页
第2页 / 共72页
高中信息技术存储管理课件_第3页
第3页 / 共72页
高中信息技术存储管理课件_第4页
第4页 / 共72页
高中信息技术存储管理课件_第5页
第5页 / 共72页
点击查看更多>>
资源描述

《高中信息技术存储管理课件》由会员分享,可在线阅读,更多相关《高中信息技术存储管理课件(72页珍藏版)》请在金锄头文库上搜索。

1、第4章 存储管理 本章学习目标 4.1 存储管理的功能 4.2 实存管理 4.3 虚拟存储器管理 4.4 碎片与抖动问题 开 始本章学习目标 本章首先介绍了存储管理的研究对象和目 的,明确了存储管理的基本功能和有关的 基本概念;然后从实存和虚存两个角度, 分别介绍了常用的几种存储管理方案;最 后对各种存储管理方案存在的问题,主要 是碎片和抖动问题进行了总结。 返回本章首页本章的主要内容如下: (1)存储管理的目的和四大基本功能。 (2)实存管理中讲述了固定分区存储管理、 可变式分区存储管理、纯分页存储管理三 种存储管理方案的实现原理 (3)虚存管理以请求式分页存储管理为重点 (4)总结各种存储

2、管理方案中存在的碎片和 抖动问题及解决方法下一页图4.1 多级存储器体系示意图4.1 存储管理的功能 4.1.1 内存的分配与回收 4.1.2 地址重定位 4.1.3 存储保护 4.1.4 虚拟存储器 返回本章首页4.1.1 内存的分配与回收 内存分配按分配时机的不同,可分为两种方式。 (1)静态存储分配:指内存分配是在作业运行之 前各目标模块连接后,把整个作业一次性全部装 入内存,并在作业的整个运行过程中,不允许作 业再申请其他内存,或在内存中移动位置。也就 是说,内存分配是在作业运行前一次性完成的。 (2)动态存储分配:作业要求的基本内存空间是 在目标模块装入内存时分配的,但在作业运行过

3、程中,允许作业申请附加的内存空间,或是在内 存中移动,即分配工作可以在作业运行前及运行 过程中逐步完成。返回本节4.1.2 地址重定位 1内存空间(或物理空间) 2逻辑空间 3地址重定位下一页1内存空间(或物理空间) 内存是由若干个存储单元组成的,每个存 储单元有一个编号,这种编号可唯一标识 一个存储单元,称为内存地址(或物理地 址)。下一页2逻辑空间 源程序经过汇编或编译后,形成目标程序 ,每个目标程序都是以0为基址顺序进行编 址的,原来用符号名访问的单元用具体的 数据单元号取代。这样生成的目标程 序占据一定的地址空间,称为作业的逻辑 地址空间,简称逻辑空间。在逻辑空间中 每条指令的地址和指

4、令中要访问的操作数 地址统称为逻辑地址。下一页图4.2 作业的名空间、逻辑地址空间和装入后的物理空间下一页3地址重定位 (1)静态地址重定位 静态地址重定位是在程序执行之前由操作 系统的重定位装入程序完成的。 (2)动态地址重定位 动态地址重定位是在程序执行期间进行的 。 下一页(b)采用动态重定位时内存空间 及地址重定位示意图(a)采用静态重定位后的内存空间 图4.3 静态地址重定位和动态地址重定位示意图返回本节4.1.3 存储保护 (1)上、下界存储保护:上、下界保护是 一种简单的存储保护技术。系统可为每个 作业设置一对上、下界寄存器,分别用来 存放当前运行作业在内存空间的上、下边 界地址

5、,用它们来限制用户程序的活动范 围。 (2)基址限长存储保护:上、下界保护 的一个变种是采用基址限长存储保护。 图4.4 界限寄存器的两种存储保护方式返回本节4.1.4 虚拟存储器 对内存进行逻辑上的扩充,现在普遍采用虚拟存 储管理技术。 虚拟存储技术的基本思想是把有限的内存空间与 大容量的外存统一管理起来,构成一个远大于实 际内存的、虚拟的存储器。此时,外存是作为内 存的直接延伸,用户并不会感觉到内、外存的区 别,即把两级存储器当作一级存储器来看待。一 个作业运行时,其全部信息装入虚存,实际上可 能只有当前运行的必需一部分信息存入内存,其 他则存于外存,当所访问的信息不在内存时,系 统自动将

6、其从外存调入内存。 返回本节4.2 实存管理 4.2.1 固定分区存储管理 4.2.2 可变式分区存储管 理 4.2.3 纯分页存储管理 返回本章首页4.2.1 固定分区存储管理 固定分区存储管理是实现多道程序设计的 最简单的一种存储管理技术。其基本思想 是,在作业未进入内存之前,就由操作员 或操作系统把内存可用空间划分成若干个 固定大小的存储区,除操作系统占用一个 区域外,其余区域为系统中多个用户共享 ,因为在系统运行期间,分区大小、数目 都不变,所以固定式分区也称为静态分区 。图4.5 固定式分区内存分配示意图(a)和(b) 固定式分区说明表返回本节4.2.2 可变式分区存储管理 1空闲分

7、区的组织形式 2内存的分配与回收 3常用的分配算法 4可变式分区的地址重定位 下一页图4.6 可变式分区内存使用情况示意图下一页1空闲分区的组织形式 空闲分区链表的组织是这样的:在每个空 闲分区的起始部分开辟出一个单元,存放 一个链表指针和该分区的大小,链表指针 指向下一个空闲分区。系统中用一个固定 单元作为空闲分区链表的链表头指针,指 向第一块空闲分区首地址,最后一块空闲 分区的链表指针存放链尾标志。如图4.7(a )所示 。下一页2内存的分配与回收 当某一个用户作业完成释放所占分区时, 系统应进行回收。在可变式分区中,应该 检查回收区与内存中前后空闲区是否相邻 ,若相邻,则应进行合并,形成

8、一个较大 的空闲区,并对相应的链表指针进行修改 ;若不相邻,应将空闲区插入到空闲区链 表的适当位置。 下一页图4.7 首次适应算法的空闲分区链表组织形式下一页3常用的分配算法 (1)首次适应算法 (2)最佳适应算法 (3)最差适应算法 下一页图4.8 最佳适应算法的空闲分区链表组织形式下一页图4.9 最差适应算法的空闲分区链表组织形式下一页图4.10 内存使用情况 下一页图4.11 用三种适应算法处理同一作业序列下一页4可变式分区的地址重定位 可变式分区的地址重定位可采用静态重定位,也 可采用动态重定位。如采用静态重定位,因用户 作业进入内存后,程序的逻辑地址实现了重定位 ,不能在内存中再进行

9、移动,经过一段时间的运 行,内存中不能再分配利用的小碎片会越来越多 。有时可能会出现这种情况,即当一个作业申请 一定数量的内存时,虽然此时空闲区的总和大于 新作业的内存要求,但却没有单个的空闲区足以 装下该作业。 采用动态重定位的可变式分区管理技术,在执行 内存分配时,如无足够大空闲块,应考虑实现紧 凑操作。其分配算法如图4.12所示 。 下一页图4.12 采用动态重定位的可变式分区分配算法返回本节4.2.3 纯分页存储管理 1纯分页存储管理中存储块的分配 与回收 2纯分页存储管理的地址重 定位问题 3联想存储器 4存储保护 下一页1纯分页存储管理中存储块的分配与回 收 通常有 两种记 录空闲

10、 存储块 的方法 :位图 法和链 表法。(a)存储块使用情况 (b)存储块使用情况的位图表示图4-13 存储块的位图管理法2纯分页存储管理的地址重定位问题 纯分页存储管理中的地址重定位是非常重 要的,要使不连续的、分散的用户程序能 正常运行,须采用动态地址重定位。此时 ,可采用重定位寄存器方式,如分页太多 ,则重定位寄存器用得太多。通常可在内 存中为每个作业开辟一块特定区域,建立 起作业的逻辑页与存储块之间的对应表格 关系,这种表常称为页面映象表,简称页 表。 下一页图4.14 纯分页存储管理示意图下一页3联想存储器 从上面介绍的地址变换过程可以看出:如果把页 表全部放在内存,那么存取一个数据

11、时,至少要 访问二次内存。一次是访问页表,形成实际内存 地址;另一次是根据形成的内存地址存取数据。 显然,这比通常执行指令的速度要慢得多,使计 算机的运行速度几乎降低一半。 应用联想存储器和页表相结合的方式,可有效地 提高系统动态地址转换的速度,是一种行之有效 的方法。下一页图4.15 纯分页存储管理地址重定位实现过程下一页图4.16 采用快表和页表相结合的分页地址变换过程示意图下一页4存储保护 四种保护方式:禁止做任何操作,只 能执行,只能读,能读/写,当要访问 某页时,先判断该页的存取控制和存储保 护信息是否允许。 添加了存取控制信息的页表表目如下图所 示: 返回本节4.3 虚拟存储器管理

12、 4.3.1 虚拟存储器的概念 4.3.2 请求式分页存储管理与动态地址 重定位 4.3.3 现代计算机系统改进的动态地址 重定位 4.3.4 页面置换算法 4.3.5 请求式分页存储管理性能分析举 例 4.3.6 请求式分段存储管理 返回本章首页4.3.1 虚拟存储器的概念 (1)程序中往往会有一些彼此互斥的部分。 (2)在一个完整的程序中,会有一些诸如出错处 理这样的子程序,在作业正常运行情况下不会执 行这些程序,没有必要把它们调入内存。 基于程序局部性原理和上述情况,就没有必要把 一个作业一次性全部装入内存再开始运行。而是 可以把程序当前执行所涉及的信息放入内存中, 其余部分可根据需要临

13、时调入,由操作系统和硬 件相配合来完成主存和辅存之间信息的动态调度 。这样的计算机系统好像为用户提供了一个存储 容量比实际主存大得多的存储器,就称为虚拟存 储器。 返回本节4.3.2 请求式分页存储管理与动态地址 重定位 请求式分页存储管理与纯分页存储管理在内存块 的分配与回收,存储保护某方面都十分相似,不 同之处在于地址重定位问题。在请求式分页存储 管理的地址重定位时,可能会出现所需页面不在 主存的情况,此时,系统必须解决以下两个问题 : (1)当程序要访问的某页不在内存时,如何发现 这种缺页情况?发现后应如何处理? (2)当需要把外存上的某个页面调入内存时,此 时内存中没有空闲块应怎么办?

14、下一页如图4.17所示是请求式分页存储管理的存储映像 下一页 为了帮助操作系统对要置换出内存的页 面进行选择,在页表中还可以增加一个 引用位,以反映该页最近的使用情况。 一般来说,一个页表的表目通常可包括 如下的数据内容:下一页请求式分页存储管理中的地址重定位和缺页中断处 理过程如图4.18所示。返回本节4.3.3 现代计算机系统改进的动态地址 重定位 (1)如何合理地组织管理相当大的页表? 在Windows NT中,为解决第一个问题,对页表本 身进行了改进,将庞大的页表本身也采取分页措 施,采用了两级页表结构。即把页表本身按固定 大小分成一个个小页表,每个小页表由210=1024个 页表表目

15、构成,每个表目占4字节,所以每个小页 表刚好占一个页面(页面大小为212=4kb)。一共 有210=1k个小页表。为了对这1k个小页表进行管理 和索引查找,设置了一个页表目录,也称之为顶 级页表或一级页表,该页目录包含有1k个表目项 ,分别指出每个次级小页表所在的物理块号和其 他有关状态信息。这样,每个作业有一个页目录 (一级页表),它的每个表目指向一个二级页表 。页目录本身也刚好是一个页面大小(210=1k,每 个表目4个字节)。下一页图4.19 Windows NT两级页表地址变换示意图下一页(2)面对大的页表,地址的映射怎样才 能比较快地实现? (1)使用快表:即利用前面我们已介绍的 高速缓冲存储器来存放经常使用的页表表 目,以提高页表的查询速度。 (2)使用高速缓冲存储器:在微处理器和 主存之间设置32kb或64kb的高速缓冲存储 器,大部分的指令和数据取自高速缓存( 命中率为98%),所以存取数据和指令速度 相当高,达到与处理器速度完全相匹配。返回本节4.3.4 页面置换算法 1最优算法(OPT算法) 2先进先出算法(FIFO算法) 3最久未使用页面置换算法(LRU算法 ) 4LRU近似算法下一页1最优算法(OPT算法)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

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