第六章虚拟存储器以CPU时间和外存空间换取昂贵内存空间,这是操作系统中的资源转换技术•6
1虚拟存储器的基本概念•6
2请求分页存储管理方式•6
3页面置换算法6
1虚拟存储器的基本概念一、程序局部性原理时间局部性一条指令被执行了,则在不久的将来它可能再被执行空间局部性若某一存储单元被使用,则在一定时间内,与该存储单元相邻的单元可能被使用局部性原理的具体体现:程序在执行时,大部分是顺序执行的指令,少部分是转移和过程调用指令
过程调用的嵌套深度一般不超过5,因此执行的范围不超过这组嵌套的过程
程序中存在相当多的循环结构,它们由少量指令组成,而被多次执行
程序中存在相当多对一定数据结构的操作,如数组操作,往往局限在较小范围内
二、虚拟存储器的概念虚拟内存(VirtualMemory)是指在具有层次结构存储器的计算机系统中,采用自动实现部分装入和部分对换功能,为用户提供一个比物理主存容量大得多的可寻址的一种“主存储器”
它使用户逻辑存储器与物理存储器分离,是操作系统给用户提供的一个比真实内存空间大得多的地址空间
实现虚拟存储器的物质基础是二级存储器结构和动态地址转换机构
经过操作系统的改造,把计算机的内存与外存有机的结合起来使用,从而得到一个容量很大的“内存”,这就是虚存
虚拟存储器实质上是把用户地址空间和实际的存储空间区分开来,当作两个不同的概念
它的容量主要受到两方面的限制:(1)指令中表示地址的字长
一个虚拟存储器的最大容量是由计算机的地址结构确定的
如:若CPU的有效地址长度为32位,则程序可以寻址范围是0~232-1,即虚存容量为4GB
(2)外存的容量
虚拟存储器的容量与主存的实际大小没有直接的关系,而是由主存与辅存的容量之和所确定
三、虚拟内存的特征虚拟性
虚拟内存不是扩大实际的物理内存,而是扩充逻辑内存的容量
每个进程不是全部装入内存,而是分成若干个