概述
虚拟存储是通过把进程中不需要立即使用的部分存到外存来扩大内存空间的一种技术。
局部性原理:
- 时间局限性:因为程序里存在大量的循环,所以一个内存部分被访问过一次还会再被访问。
- 空间局限性:访问某个内存部分的时候,通常会接着访问内存附近的部分。
虚拟存储的实际容量=Min(内存+外存之和,CPU的寻址范围),比如某计算机的CPU是32位的,内存是4GB,外存是512MB,那么虚拟存储的大小就是Min(222,232)=2^22。虚拟内存的最大容量就是CPU的寻址范围确定的。
虚拟存储的特点:
- 多次性:允许程序多次被调入内存,而不是一次全部调入。
- 对换性:允许在作业允许过程中,将作业调入调出。
- 虚拟性:逻辑上扩充了内存容量,但不等于物理上的内存容量。
请求页面与页面置换
虚拟内存的实现:
-
请求分页:所需的作业不在内存时,将其从外存调入内存。
页面置换:在内存不够用时,把