一、定义
在传统存储管理方式的基础上引入了交换技术,覆盖技术,使得内存利用率有所提升,并能从逻辑上扩充内存容量。
二、传统存储管理方式的特征、缺点
缺点:
一次性:作业必须一次性全部装入内存后,才能开始运行。
驻留性:一旦作业被装入内存,就会一直驻留在内存中,直到作业运行结束。
三、局部性原理
时间局部性:如果执行了程序中的某条指令,那么不久后该指令很有可能再次执行;如果某个数据被访问过,那么不久后该指令很可能再次被访问。(因为程序中存在大量的循环)
空间局部性:一旦程序访问了某个存储单元,不久后,其附近的存储单元也很有可能被访问。(因为很多数据在内存中都是连续存放的, 并且程序的指令也是顺序地在内存中存放的)
四、虚拟内存的定义和特征
基于局部性原理, 在程序装入时, 可以将程序中很快会用到的部分装入内存, 暂时用不到的部分留在外存,就可以让程序开始执行。
在程序执行过程中, 当所访问的信息不在内存时, 由操作系统负责将所需信息从外存调入内存, 然后继续执行程序。
若内存空间不够, 由操作系统负责将内存中暂时用不到的信息换出到外存。
在操作系统的管理下, 在用户看来似乎有一个比实际内存大得多的内存, 这就是虚拟内存。
多次性:无需一次性将作业调入内存,而是允许分成多次调入内存也可以运行。
对换性:在作业运行时无需一直常驻内存,而是允许在作业运行时将作业换入、换出。
虚拟性:从逻辑上扩充了内存的容量。
五、如何实现虚拟内存技术
虚拟内存的实现需要建立在离散分配的内存管理方式基础上。
操作系统需要提供请求调页功能和页面置换功能(段置换)
请求调页功能:在程序执行过程中, 当所访问的信息不在内存时, 由操作系统负责将所需信息从外存调入内存, 然后继续执行程序。
页面置换功能(段置换):若内存空间不够, 由操作系统负责将内存
中暂时用不到的信息换出到外存。