计算机
组 成 原 理
在线开放课程
01
虚拟存储器
目录
CATALOG
01 03
02
虚拟存储器 虚拟存储器虚 替换算法
的基本概念 实地址变换
虚拟存储器的基本概念 明德 博学 日新 笃行
1、什么是虚拟存储器
虚拟存储器只是一个容量非常大的存储器的逻辑模型 ,不是任何实际
的物理存储器。它借助于磁盘等辅助存储器来扩大主存容量,使之为更大或
更多的程序所使用。
虚拟存储器不仅是解决存储容量和速度的矛盾的一种方法,而且也是管理
存储设备的有效方法。有了虚拟存储器,用户无需考虑所编程程序在主存中
是否放得下或放在什么位置等问题。
虚拟存储器的基本概念 明德 博学 日新 笃行
2、虚拟地址
虚拟存储器为用户提供了一个比实际主存空间大得多的程序地址空间。此
时程序的逻辑地址称为虚拟地址(虚地址)。
相对应的物理地址(又称实地址)是CPU地址引脚送出的,用于访问主存的
地址。
虚拟地址是由编译程序生成的。工作在虚拟地址模式下的CPU理解这些虚拟
地址,并将他们转换为物理地址。
实际上,虚拟存储器的内容是要保存在磁盘上的,因此虚拟地址空间的大小
受辅助存储器容量的限制。
虚拟存储器的基本概念 明德 博学 日新 笃行
3、虚拟存储器的工作原理
从原理上看,主存—外存层次和cache—主存层次有很多相似之处,他们都
是基于程序局部性原理,把程序最近常用的部分驻留在高速的存储器中;一旦
这部分不常用了,就送回到低速存储器中;这种换入换出是由硬件或操作系统
完成,无需用户干预;最终达到使存储系统的性能接近高速存储器,而价格接
近低速存储器。他们采用的地址映射和替换策略,从原理上看也是相同的。但
是由于磁盘的存取速度是主存的上千倍,而cache的存取速度是主存的5 ~10倍,
因此在虚拟存储器中未命中的性能损失要远大于cache系统中的损失。
虚拟存储器的基本概念 明德 博学 日新 笃行
主存—外存层次的基本信息传送单位可采用几种不同的方案:段、页或段页。
1.段及段式管理
(1 )什么是段
利用程序的模块化性质,按照程序的逻辑结构划分成的多个相对独立部分。
如过程、子程序、数据表、阵列等。
特点:作为独立的逻辑单位可以被其他程序调用,以形成规模较大的程序。
因此用段作为主存—外存之间传送和定位的基本单位是合理的。
虚拟存储器的基本概念 明德 博学 日新 笃行
(2 )段表
用来指明各段在主存中的位置而在
主存中建立的一个表。
每段都有它的名称(用户名或数据
结构名或段号)、段在主存中的起点、
段长及装入位等控制信息,段表就是
虚拟存储器中各段的上述信息的表。
例:图示。
段表本身也是一个可以再定位的段。
可以放在外存,需要时调入主存,不
过一般都驻留内存。
虚拟存储器的基本概念 明德 博学 日新 笃行
(3 )段式管理
把主存按段分配的存储管理方式称为段式管理。
优点:段的分界与程序的自然分界相对应;段的逻辑独立性使它易于编译、
管理、修改和保护,也便于多道程序共享;某些类型的段(堆