概念
虚拟存储扩展是指利用虚拟存储技术来实现从逻辑上扩充内存容量的。虚拟存储技术是存储管理技术与虚拟技术相结合的产物。按照结合方法可划分为虚拟分页管理和虚拟分段管理两种形式。
虚拟存储技术将提供给用户一个超出内存实际尺寸的地址空间。如果说普通存储管理系统力求存储器的利用率达到100%的话,那么虚拟存储技术(从逻辑上说)达到的利用率比100%还要高。
虚拟存储器技术需要以外存作为物质基础,一个海量的外存是程序和数据的后援存储空间。从单一进程来看,其程序和数据可能达到的最大长度是处理器的地址总线所能表示的地址空间长度,而与实际的物理存储器尺寸无关。也就是说,一个程序使用的虚拟存储器,其地址空间是地址总线所能表示的逻辑空间。但是由于系统可能采用多道程序并发运行机制,因此系统所提供的虚拟存储器是一个多重虚拟存储器(Multi Virtual Memory),它的尺寸是以整个外存空间为基础的。1
特征虚拟存储器最基本的特征是离散性,在此基础上又形成了多次性及交换性特征。表现出来的最重要特征是虚拟性。
(1)离散性。是指在内存分配时采用离散分配方式,这是其他特征的基础,没有离散性,就不可能实现虚拟存储器。
(2)多次性。是指一个作业被分成多次地调入内存运行,亦即在作业运行时没有必要将其全部装入,只须将当前要运行的那部分程序和数据装入即可,以后运行到哪一部分时再将它调入,多次性是虚拟存储器最重要的特征,任何其他的存储管理方式都不具有这一特征。
(3)交换性。是指允许在作业运行过程中换进、换出,亦即,在进程运行期间,允许将那些暂时不使用的程序和数据,从内存调至外存的交换区(换出),待以后需要时再将它们从外存调至内存(换入);还允许将暂时不运行的进程调至外存,待它们又具备运行条件时再调入内存。换进、换出能有效地提高内存利用率。
(4)虚拟性。是指能从逻辑上扩充内存容量,这是虚拟存储器表现出来的最重要特征。2
实现方式虚拟存储器的实现,都毫无例外地建立在离散分配存储管理基础上。目前,所有虚拟存储器都是采用下述方式之一实现的。
请求分页系统它是在分页系统的基础上,增加了请求调页功能、页面置换功能所形成的页式虚拟存储系统。为了实现请求调页和置换功能,系统必须提供必要的硬件支持。其中,最主要的是:
(1)请求分页的页表机制。它是在纯分页的页面机制上增加若干项而形成的,作为请求分页的数据结构。
(2)缺页中断机构。每当用户程序要访问的页面尚未调入内存时,便产生一缺页中断,请求操作系统将所缺的页面调入内存。
(3)地址变换机构。它是在纯分页的地址变换机构的基础上发展形成的。
请求分段系统它是在分段系统基础上,增加了请求调段和分段置换功能后所形成的段式虚拟存储系统。为了实现请求调段和分段置换功能,系统也必须提供必要的硬件支持:
(1)请求分段的段表机制。这是在纯分段的段表机制基础上增加若干项而形成的,作为请求分段的主要数据结构。
(2)缺段中断机构。每当用户程序所要访问的段尚未调入内存时,产生一缺段中断,请求操作系统将所缺的段调入内存。
(3)地址变换机构。它是在纯分段的地址变换机构基础上发展形成的。
另外,目前也有不少虚拟存储器是建立在段页式系统基础上,通过增加请求调页和页面置换功能而形成了段页式虚拟存储系统。2