计算机操作系统(十九):虚拟内存
来源王道考研系列视频:
https://www.bilibili.com/video/BV1YE411D7nH
传统管理方式的特征、缺点
-
一次性:作业必须一次性全部装入内存后才能运行。
- 作业很大时,不能全部装入内存,导致大作业无法运行
- 大量作业运行时,由于内存无法容纳所有作业,因此只有少量作业能运行,导致多道程序并发度下降。
-
驻留性:一旦作业被装入内存们就会一直驻留在内存中明知道作业运行结束,事实上没在一个时间段,只需要访问作业的一小部分数据即可正常运行,这就导致了内存中会大量驻留暂时用不到的数据。
高速缓冲技术:
将近期会频繁访问到的数据放到发更高速的存储器中,暂时用不到的数据会放在更低速的存储器中。
快表机构就是将近期常访问的页表项副本放到更高速的联想寄存器中。
虚拟内存的定义和特征
- 基于局部性原理,在程序装入时,可以将程序中很快用到的部分装入内存,暂时用不到的部分留在外存,就可以让程序开始执行
- 在程序执行过程中,当访问的信息不存在时 ,由操作系统负责将所需要的信息从外存调入内存,然后继续执行程序
- 若内存空间不够,由操作系统负责将内存中暂时不用的信息换到外存。
- 虚拟内存是操作系统虚拟性的一个体现,实际物理内存大小没有变,只是在逻辑上进行了扩充。
三个特征
- 多次性:无需再作业一次运行时一次性装入内存,而是允许被分成多次调入内存。
- 对换性:在作业运行时无需一直常驻,而是允许在作业运行中,将作业换入换出
- 虚拟性:从逻辑上扩充了内存的容量,远大于实际的容量
怎样实现
操作系统要提供请求调页(或请求段)功能
操作系统要提供页面置换或段置换功能