[计算机软件及应用]5存储管理-2.ppt

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

5.6 虚拟存储器(VIRTUAL MEMORY) 5.6.1 局部性原理 5.6.2 虚拟存储器的原理 5.6.3 虚拟存储技术的种类 5.6.4 存储保护和共享 5.6.5 虚拟存储的置换算法 5.6.1 局部性原理 程序在执行过程中的一个较短时期,所执行的指令 地址和指令的操作数地址,分别局限于一定区域。可以 表现为: 1、时间局部性:一条指令的一次执行和下次执行,一 个数据的一次访问和下次访问都集中在一个较短时期内 (一条指令被执行,则在不久的将来它可能再被执行) 2、空间局部性:当前指令和邻近的几条指令,当前访 问的数据和邻近的数据都集中在一个较小区域内。(若 某一存储单元被使用,则在一定时间内,与该存储单元 相邻的单元可能被使用) 1、程序在执行时,大部分是顺序执行的指令,少 部分是转移和过程调用指令。 2、过程调用的嵌套深度一般不超过5,因此执行 的范围不超过这组嵌套的过程。 3、程序中存在相当多的循环结构,它们由少量指 令组成,而被多次执行。 4、程序中存在相当多对一定数据结构的操作,如 数组操作,往往局限在较小范围内。 5.6.2 虚拟存储器的原理 1、在程序装入时,不必将其全部读入到内存,而只需将当前 需要执行的部分页或段读入到内存,就可让程序开始执行。 2、在程序执行过程中,如果需执行的指令或访问的数据尚未 在内存(称为缺页或缺段),则由处理器通知操作系统将相 应的页或段调入到内存,然后继续执行程序。 3、另一方面,操作系统将内存中暂时不使用的页或段调出保 存在外存上,从而腾出空间存放将要装入的程序以及将要调 入的页或段。只需程序所需的一部分在内存就可执行。 二、 引入虚拟存储技术的好处 1、大程序:可在较小的可用内存中执行较大的用户 程序; 2、大的用户空间:提供给用户可用的虚拟内存空间 通常大于物理内存(real memory); 3、并发:可在内存中容纳更多程序并发执行; 4、易于开发:与覆盖技术比较,不必影响编程时的 程序结构; 三、虚拟存储技术的特征 1、不连续性:物理内存分配的不连续,虚拟地址空 间使用的不连续(数据段和栈段之间的空闲空间,共 享段和动态链接库占用的空间) 2、部分交换:与交换技术相比较,虚拟存储的调入 和调出是对部分虚拟地址空间进行的; 3、大空间:通过物理内存和快速外存相结合,提供 大范围的虚拟地址空间 总容量不超过物理内存和外存交换区容量之和 5.6.3 虚拟存储技术的种类 5.6.3.1 虚拟页式 5.6.3.2 虚拟段式 5.6.3.3 段页式 5.6.3.4 段页式习题 5.6.3.1 虚拟页式(virtual paging) 在进程开始运行之前,不是装入全部页面, 而是装入一个或零个页面,之后根据进程运行的 需要,动态装入其它页面;当内存空间已满,而 又需要装入新的页面时,则根据某种算法淘汰某 个页面,以便装入新的页面。 三、缺页中断 2、缺页中断的特殊性 (1)缺页中断在指令执行期间 产生和进行处理,而不是在一 条指令执行完毕之后。所缺的 页面调入之后,重新执行被中 断的指令。 (2)一条指令的执行可能产生 多次缺页中断,如:swap A,B, 指令本身和两个操作数A, B都 跨越相邻外存页的分界处,则 产生6次缺页中断。 四、虚拟页式管理分类 1、请求页式 当需要执行某条指令而又发现它不在内存时, 或当执行某条指令需要访问其他的数据或指令时, 这些指令和数据不在内存中,从而发生缺页中断 (主要讨论)。 2、预调入 系统对那些在外存中的页进行调入顺序计算, 估计出这些页中指令和数据的执行和被访问的顺 序,并按此顺序将它们顺次调入和调出内存。 五、虚拟页式管理的优缺点 1、优点 由于它不要求作业或进程的程序段和数据在内存中连续存放,消除了碎片问题 实现了虚存 2、缺点 要求有硬件支持 增加了系统开销,如缺页中断处理 请求调页的算法如选择不当,由可能产生抖动现象 每个作业和进程的最后一个页内总有由一部分空间得不到利用,如果页面较大,则这已部分得损失仍然较大。 5.6.3.2 虚拟段式(virtual segmentation) 需要在进程段表中添加若干项: 标志位:存在位(present bit),修改位(modified bit/dirty bit),增长位(该段是否增长过,在虚拟页式中没有该位) 访问统计:如使用位(use bit) 存取权限:如读R,写W,执行X 外存地址 三、段式管理的优缺点 1、优点 可以实现虚存 段长可以动态增加(可以吸收新数据) 便于对具有完整逻辑功能的信息段进行共享 便于实现动态链接 2、缺点 每个段的长度受可用内存区大小的限制 需要更多的

文档评论(0)

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

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

1亿VIP精品文档

相关文档