- 1、本文档共88页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 虚拟存储器;第五章 虚拟存储器;5.1 虚拟存储器的基本概念 ;5.1.1 虚拟存储器的引入 ;2.局部性原理; 局限性又表现在下述两个方面:
(1) 时间局限性
如果程序中的某条指令一旦执行,则不久以后该指令可能再次执行;如果某数据被访问过, 则不久以后该数据可能再次被访问。
产生时间局限性的典型原因,是由于在程序中存在着大量的循环操作。
(2) 空间局限性
一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也将被访问。
程序在一段时间内所访问的地址,可能集中在一定的范围之内,其典型情况便是程序的顺序执行。 ;3.虚拟存储的定义;3. 虚拟存储的定义;;3.虚拟存储器定义
虚拟存储器:是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统,其逻辑容量由内存容量和外存容量之和所决定,其运行速度接近于内存速度,而成本却又接近于外存。
虚拟存储技术是一种性能非常优越的存储器管理技术,故被广泛地应用于大、中、小型机器和微型机中。; ;5.1.2 虚拟存储器的实现方法 ;二、请求分段系统
它是在纯分段系统的基础上增加了请求调段、分段置换两大功能所形成的段式虚拟存储系统。
为了实现请求调段、分段置换两大功能,系统必须提供如下的硬件支持:
1. 请求分段的段表机制。
2. 缺段中断机构。
3. 地址变换机构。
此外,实现请求调段、分段置换两大功能还需得到OS的支持。有关请求式分段的具体实施将在后面的小节中加以说明。;三、段页式虚拟系统
目前,许多虚拟存储管理系统是建立在段页式系统的基础上的,通过增加了请求调页、页面置换两大功能所形成的段页式虚拟存储系统。
如:Intel 80386处理机便支持段页式虚拟存储系统。 ;虚拟存储器具有以下主要特征:
1.多次性
多次性是指一个作业被分成多次调入内存运行。
2.对换性
对换性是指作业的运行过程中进行换进、换出。换进和换出能有效地提高内存利用率。
3.虚拟性
虚拟性是指能够从逻辑上扩充内存容量,使用户所看到的内存容量???大于实际内存容量。;虚拟存储的典型问题:抖动(thrashing);5.2 请求分页存储管理方式 ;5.2.1 请求分页中的硬件支持 ;页描述子; 二、缺页中断机构
由上述页表机制知道,状态位记录了访问页面是否在内存。在地址映射过程中,在页表中发现所要访问的页不在内存,则产生缺页中断,也称为缺页故障。OS接到此中断信号后,就调出缺页中断处理程序,根据页表中给出的外存地址,将该页调入内存,使作业继续运行下去。
缺页中断是一种特殊的中断,与一般中断相比,主要表现为:
①在指令执行期间产生和处理中断信号。通常,CPU只能在指令之间接受中断;然而,一个缺页中断要求在指令执行中间得到服务,即发现所要访问的指令或数据不在内存时产生缺页中断并处理。;②再则,一条指令可能引起多次不同的页面故障。下图是一个十分极端的例子,这条指令的执行需要访问六个不同的页面,对它们的访问都可能引起缺页中断。 ;缺页中断处理过程;;三.地址变换机构 ;5.2.2 内存分配策略和分配算法 ;最小物理块数:是指能保证进程正常运行所需的最少物理块数。若系统为某进程所分配的物理块数少于此值时,进程将无法运行。
进程应获得的最少物理块数与计算机的硬件结构有关,取决于指令的格式、功能和寻址方式。
例:
对于某些简单的机器,若是单地址指令且采用直接寻址方式,则所需的最少物理块数为2。
如果该机器允许间接寻址时,则至少要求有物理块数为3。
对于前面所介绍的在缺页中断机构中要发生6次中断的情况,至少要为每个进程分配6个物理块,以装入6个页面。;两种置换策略;1)固定分配局部置换
为每个进程分配一定数目的物理块,在整个运行期间都不再改变。
实现这种策略的困难在于:应为每个进程分配多少个物理块难以确定。
若太少,会频繁地出现缺页中断,降低了系统的吞吐量;
若太多,又必然使内存中驻留的进程数目减少,进而可能造成CPU空闲或其它资源空闲的情况,而且在实现进程对换时,会花费更多的时间。
;2)可变分配全局置换 (常用方式)
在采用这种策略时,先为系统中的每个进程分配一定数目的物理块,而OS自身也保持一个空闲物理块队列。
当某进程发现缺页时,由系统从空闲物理块队列中,取出一个物理块分配给该进程,并将欲调入的(缺)页装入其中。
这样,凡产生缺页(中断)的进程,都将获得新的物理块;
仅当空闲物理块队列中的物理块用完时,OS才能从内存中选择一页调
文档评论(0)