存储虚拟化,把不同的硬件抽象出来,以管理工具来实现统一的管理,不必再管后端的介质到底是什么。
局部性原理
虚拟存储器的概念 为解决内存小而作业大、作业多的矛盾, 以及执行过程中只是把当前运行需要的那部分程序和数据装入内存。 所以,操作系统把各级存储器统一管理起来。
就是说, 应该把一个程序当前正在使用的部分放在内存, 而其余部分放在磁盘上,就启动执行它。
操作系统根据程序执行时的要求和内存的实际使用情况, 随机地对每个程序进行换入/换出。 这样, 就给用户提供一个比正式的内存空间大的多的地址空间, 这就是虚拟存储器。
所谓虚拟存储器是用户能作为可编址内存对待的存储空间, 在这种计算机系统中虚地址被映射成实地址。
简单地说,虚拟存储器:是由操作系统提供的一个假想的特大存储器。
就是说, 虚拟存储器并不是实际的内存,它的大小比内存空间大的多;
用户感觉所能使用的“内存”非常大, 但这是操作系统对物理内存的扩充。 它的物质基础是:
二级存储器结构、和动态地址转换(DAT)。
机构虚拟存储器的基本特征:
虚拟扩充。 虚拟存储器不是物理上扩充内存空间, 而是逻辑上扩充了内存容量。 部分装入。
每个作业不是全部一次的装入内存, 而是分成若干部分。 离散分配。 一个作业分成多个部分,没有全部装入内存。
即使装入内存的那些部分也不必占用连续的内存空间, 而是“见缝插针”。 多次对换。
在一个进程运行期间, 它所需的全部程序和数就要分成多次调入内存。
注意:
虚拟存储器的容量虽然提供了特大的地址空间, 用户在编程时一般不应考虑可用空间有多大。 但是, 虚拟存储器的容量不是无限大的。
它主要受两方面的限制:
(1)机器指令中表示地址的二进制数是有限的;
(2)外存的容量也是有限的。