存储管理虚拟存储请求页式管理

上传人:艾力 文档编号:51635237 上传时间:2018-08-15 格式:PPT 页数:87 大小:1.36MB
返回 下载 相关 举报
存储管理虚拟存储请求页式管理_第1页
第1页 / 共87页
存储管理虚拟存储请求页式管理_第2页
第2页 / 共87页
存储管理虚拟存储请求页式管理_第3页
第3页 / 共87页
存储管理虚拟存储请求页式管理_第4页
第4页 / 共87页
存储管理虚拟存储请求页式管理_第5页
第5页 / 共87页
点击查看更多>>
资源描述

《存储管理虚拟存储请求页式管理》由会员分享,可在线阅读,更多相关《存储管理虚拟存储请求页式管理(87页珍藏版)》请在金锄头文库上搜索。

1、1内存的物理组织内存的物理组织l物理地址:把内存分成若 干个大小相等的存储单元 ,每个单元给一个编号, 这个编号称为内存地址( 物理地址,绝对地址,实地 址),存储单元占8位,称 作字节(byte)。l物理地址空间:物理地址 的集合称为物理地址空间 (主存地址空间),它是 一个一维的线性空间。2程序的逻辑结构程序的逻辑结构l程序地址:用户编程序时所用的地址(或称逻辑地址 、虚地 址 ),基本单位可与内存的基本单位相同,也可以不相同。l程序地址空间(逻辑地址空间、虚地址空间):用户的程序地 址的集合称为逻辑地址空间,它的编址总是从0开始的,可以 是一维线性空间,也可以是多维空间。34.6虚拟存储

2、器的基本概念4.6.1 虚拟存储器的引入4.6.2 虚拟存储器的实现方法4.6.1 虚拟存储器的特征4.6.1虚拟存储器引入l1.常规存储器管理方式的特征l2.局部性原理l3.虚拟存储器定义51.前面讨论的各种存储管理方法虽各 有特长,但有一些共同的特点: 首先是“一次性分配”。 其次是“驻留性”。 作业全部信息 ,必须一次性 装入内存 作业信息一旦 装入内存便一 直驻留到作业 运行结束 一方面使大作业的运行受到 限制,另一方面又影响了 多道程序的实现。 62 2、局部性原理、局部性原理程序的局部性规律,程序往往会不均 匀地高度局部化地访问内存。 7(1)程序在执行时,在大多数情况下仍是顺序执

3、 行的。这种特性使得程序的执行在一段时间内被 限制在作业的某一局部范围。 P.Denning有以下一些论点: (2)过程调用将会使程序的执行轨迹由一部分 内存区域转至另一部分区域。但在大多数情况下, 过程调用的深度都不超过5。 在一段时间内,程序将会被局限于这 些过程的范围内运行。8(3)程序中存在许多循环结构,它们可以 多次重复执行。 for i:=1 to n ai:=ai+1;(4)程序中还包括许多对数据结构的处理, 它们往往都局限于很小的范围内。9局限性的表现:时间,空间 (1)时间局限性时间局限性是指最近被访问的存储位 置,很可能不久的将来还要被访问。 支持这种现象的是: (a) 循

4、环; (b) 子程序; (c) 栈; (d) 用于计数和总计的变量。 10(2)空间局限性空间局限性是指存储访问有集成一组 的倾向,以致一旦某个位置被访问到,很 有可能它附近的位置也要被访问。 支持这种现象的是: a、数组遍历; b、代码的顺序执行; c、程序员倾向于将相关的变量定义相互靠 近存放。 11基于局部性原理,作业没有必要全部装基于局部性原理,作业没有必要全部装 入内存。入内存。 如果计算机系统把辅助存储器当做主存储器 的扩充,当作业运行时,不是将其全部信息装入 内存,而是将必须部分先装入内存,其它部分仍 存于辅存中。作业运行过程中随时把需要但又不 在内存的信息装入内存,把暂时不用的

5、信息淘汰 出去,以确保作业的正确运行。 好象这个计算机系 统向他们提供了一 个容量很大的主存123、虚拟存储器的定义所谓虚拟存储器是指具有请求调入功能和置换功能,能从逻辑上对内存容 量进行扩充的一种存储器系统。 虚拟存储器的大小受计算机系统地址结 构和可用外存数量的限制,与实际内存单元 的数量无关。134.6.2 4.6.2 虚拟存储器的实现方式虚拟存储器的实现方式 离散分配存储管理方式是实现虚 拟存储器的基础。 1.分页请求系统2.分段请求系统141 1、页式虚拟存储系统是在分页系统的基础上,增加了请求调页功能、页面置换功能所 形成的分页请求系统分页请求系统。 15硬件支持: (1) 请求分

6、页的页表机制。 (2) 缺页中断机构。 (3) 地址变换机构。 软件支持: (1) 实现请求调页的软件。 (2) 实现页面置换的软件。 162 2、请求分段系统请求分段系统这是在分段系统的基础上,增加了请 求调段及分段置换功能后,所形成 的段式虚拟存储系统。 17为了实现请求分段,系统要提供硬件支持:为了实现请求分段,系统要提供硬件支持: (1) 请求分段的段表机制。 (2) 缺段中断机构。 (3) 地址变换机构。 同样地,请求调段和段的置换功能的 实现也需要得到OS的支持。 184.6.3 4.6.3 虚拟存储器的特征虚拟存储器的特征 离散性是虚拟存储器最基本的要求, 虚拟性是它的最重要特征

7、,另外虚拟存储 器还具有多次性和对换性。 191、离散性离散性是指在内存分配时采用离散分配 方式。2、多次性 作业分多次装入内存 3、对换性运行时换进换出 4、虚拟性逻辑上扩充内存容量 最基本特 性204.7 4.7 请求分页存储管理方式请求分页存储管理方式 请求分页存储管理方式是建立在纯分 页基础上的.其基本思想:在进程开始运行之前,不 是装入全部页面,而是装入一个或零个页 面,之后根据进程运行的需要,动态装入 其它页面;当内存空间已满,而又需要装 入新的页面时,则根据某种算法淘汰某个 页面,以便装入新的页面214.7.1 4.7.1 请求分页中的硬件支持请求分页中的硬件支持 一、页表机制

8、二、缺页中断机构 三、地址变换机构页表的作用是实现从用户地址空间 中的逻辑地址到内存空间的物理地址的 转换。22请求页式管理中对地址空间分页,内存分 块与基本分页管理一样,但对虚页的管理是不 同的。要访问的页面不在内存中,如何发现和 处理这种情况?这是请求分页存储 管理要解决的两个 基本问题23在纯分页系统中,页表的内容为:页号物理块号针对第一个问题:如何发现要访问的 页面不在内存?扩充页表:页号物理块号状态位P外存地址24针对第二个问题:怎样调入页面?由地址变换机构产生一个缺页中断信号, OS进行中断处理后,根据该页的外存地址把它从外 存调入内存。引进修改位和访问字段。25请求分页系统中,页

9、表项如下:请求分页系统中,页表项如下: 页号物理块号状态位P访问字段A 修改位M 外存地址(1)状态位(驻留位)P:该页是在内存还是在外存 (2)访问字段位A:记录本页在一段时间内被访问 的次数;根据访问位来决定淘汰哪页(由不同的算 法决定) (3)修改位M :该页调入内存后是否在被修改过 (4)外存地址:该页在外存上的地址,通常为外存物 理块号.26在虚拟存储系统中,当一个作业被编译或 经链接装配后得到的地址空间,通常存在磁盘 上。页号物理块号 保护信息外页 面表当一个作业被调度到而装入内存时,系统 为它在内存建立一张页表。272、缺页中断机构 在请求分页系统中,当要访问的页面不 在内存时,

10、硬件发一个缺页中断,转交 OS处理。28(1)在指令执行期间产生和处理中断信号。 (2)一条指令在执行期间,可能产生多次缺 页中断。 它跟一般的中断有着明显的区别:29页面654321Copy A To BB:A:303、地址变换机构请求分页系统中的地址变换机构是以分页系统的地址变换机构为基础的,还增加了产生缺页 中断、处理缺页中断,置换等功能。 31在进行地址变换时,首先去检索快表; 如果快表中没有这一页的页表项,再到内存中找 页表,根据状态位P来判断该页是否在内存中 。 在内存,将该页的页表写入快表;快表满时,调出某 页表项,再写入该页的页表项 不在内存,则产生缺页中断。操作系统接到此中断

11、 信号后,就调出缺页中断处理程序,根据页表中给出的 外存地址,将该页调入内存,使作业继续运行下去 如果内存中有空闲块,则分配一页,将新调入页装入 内存,并修改页表中相应页表项目的驻留位及相应的内 存块号 若此时内存中没有空闲块,则要淘汰某页,若该页 在内存期间被修改过,则要将其写回外存,否则不写32图4-25 这里仅仅给出一个很粗略的框图,具体的过程是很复 杂的。因为作业的副本是以文件形式存于外存上,因 而要求页面传输时,必然要涉及到文件系统,此外,还得调用输入输出进程。在多道程序环境下, 一个作业在等待传输页时,它处于被阻塞的状态。此 时,由系统调度另一作业运行。当页面传输完成后, 才把原先

12、被阻塞的那个作业重新置成就绪状态,但要 等到再次调度到它时,才能恢复到原先中断的地方继 续运行下去。 334.7.2 4.7.2 内存内存分配策略和分配算法分配策略和分配算法 在为进程分配物理块时,又要解决三个问题 : 1、保证进程正常运行而需要的最少物理块 数;2、进行分配时,物理块数目是固定的还是 可变的;(分配策略)3、是采取平均分配算法还是根据进程的大 小按比例分配物理块。341、最小物理块数的确定 最小的物理块数,是指保证进程正常运行所 需的最少物理块数。 最少物理块数与指令的格式、功能和寻址方 式有关,也就是说与计算机的硬件结构有关。 如:单地址指令且直接寻址系统,至少2块指令块/

13、数据块352、物理块的分配策略1)、固定分配局部置换(Fixed Allocation, Local Replacement) 基于进程的类型,为每个进程分配一定数目的物 理块(n块),在整个运行其间不变; 如缺页: n块中置换一页,以保证该进程在内存 中的页面数不变; 问题: 多少个物理块合适? 物理块太多:资源空闲. 物理块太少:频繁中断 采取固定和 可变分配策 略 362)、可变分配全局置换空闲物理块队列先为每个进程分配一定数目的物理块,OS也保 持一个空闲物理块队列,当进程缺页时,由系 统从空闲物理块队列取出一个物理块分配给该 进程,并将要调入的(缺)页装入内存. 仅当空闲物理块队列中

14、的物理块用完时,OS才 从内存中任一进程的一页调出. 问题: 会使被调出页的进程缺页,进而使缺页 率增加,影响其它进程的执行.373)、可变分配局部置换要求保持 适当的缺 页率 基于进程的类型,为每个进程分配一定数 目的物理块, 进程如缺页: 只从该进程在 内存中的页面中换出一页,这样不会影响 其它进程; 如果进程在运行其间频繁发生缺页中断, 则系统再为该进程分配若干个附加物理块 ,直至进程的缺页率减少到合适为止;若进 程的缺页率特别低,可适当减少已分配该 进程的物理块数目.383、物理块分配算法 在固定分配策略中,系统在为各个进程 分配物理块时,可采取: 1)、平均分配算法 39系统中多进程

15、页面数的总和为:每个进程所能分到的物理块数bi=Si/S m,m 为可用的物理总数。 3)、考虑优先权的分配算法 2)、按比例分配算法 ,Si为某个进程的页面数 。 404.7.3 4.7.3 调页策略调页策略1、何时调入页面 2、从何处调入页面 3、页面调入过程1)预调页策略 2)请求调页策略用于首次调 入412、从何处调入页面 (1)系统拥有足够的对换区空间。 当缺页时,全部从对换区把所需的页面调 入内存,使调页速度提高。 要求: 进程运行前,把进程相关文件拷入对 换区在请求分页系统中,外存分为两部分:文件区和对换区42刚开始时,都放在文件区 文件区 对换区不改 改外存可 能被修 改 不会

16、被修改内存(2)系统缺少足够的对换区空间。 43(3) UNIX方式与进程有关的文件都放在文件区。没有 运行过的页面,从文件区调入内存;已经运 行过又被换出的页面,放在对换区,下次调 入时,从对换区调入。文件区 对换区第一次内存外存44外存物理块号内存有空:调入内存不空:换出一页修改位为1,重新写入外存修改位为0,不必写入外存将缺页调入内存修改页表,写入快表物理地址访问数据3、页面调入过程 454.8.14.8.1最佳置换算法和先进先出算法最佳置换算法和先进先出算法4.8 4.8 页面置换算法页面置换算法4.8.24.8.2最近最久未用置换最近最久未用置换算法算法4.8.34.8.3CLOCKCLOCK置换算法置换算法4.8.44.8.4其他其他置换算法置换算法464.8.14.8.1最佳置换算法和先进先出算法最佳置换算法和先进先出算法4.8 4.8 页面置换算法页面置换算法假定作业p共计n页,而系统分配给它的主 存块只有m块(m,n均为正整数,mn) ,即最多只能容纳m页。如

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

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

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