计算机系统虚拟内存的最大容量由CPU地址长度决定。虚拟内存的实际容量由CPU地址长度和外部存储器的容量决定。由于CPU地址长度可以表示远大于外部存储器容量的大小,因此虚拟存储器的实际容量。是存储器和外部存储器容量的总和;当外部存储器容量远大于CPU字长所能表示的大小时,虚拟存储器的实际容量由CPU字长决定。一般来说,一个CPU地址长度所能表示的大小要大于外部存储器的容量。
虚拟内存容量不是无限的。最大容量受内存和外部存储的总可用容量限制。虚拟内存的实际容量受到计算机地址总线结构的限制。
扩展信息:
将内存和外部存储有机结合使用,实现大量“内存”“容量,这就是虚拟内存。如果进程没有完全加载,则称为虚拟内存。可以分为按需取页和按需取段两种方式。
引入虚拟内存的好处:
大型用户程序可以在较小的可用内存中执行;
内存执行中可以容纳更多的并发程序;
编程时不影响程序结构(与覆盖技术相比);
用户可用的虚拟内存空间通常大于物理内存。
参考资料:百度-徐村百科
存储管理主要是内存和外部存储的统一管理。内存管理的对象是主存,也称为内存。其主要功能包括分配和回收主存空间、提高主存利用率、扩展主存、有效保护主存信息等。
存储管理解决方案的主要目标是解决多个用户使用主内存的问题。存储管理解决方案主要包括分区存储管理、分页存储管理、分段存储管理、分段页存储管理和虚拟存储管理。操作系统使系统看起来具有比实际大得多的内存空间。
虚拟内存可以代表系统实际物理空间的数倍。每个进程都在自己的虚拟地址空间中运行。这些虚拟空间彼此完全隔离,因此进程不会相互影响。同时,虚拟内存硬件机制可能会使某些内存区域变得不可写。这可以保护代码和数据免受恶意软件的侵害。
虚拟存储
当程序所需的存储空间大于实际内存空间时,就会导致程序难以运行。虚拟存储技术利用真实内存空间和较大的外部存储空间,形成远大于实际内存空间的虚拟存储空间。程序运行在这个虚拟存储空间中。
实现虚拟存储的基础是程序局部性原理,即程序在当前进程中往往表现出一定局部范围内的执行特性。随着时间的推移,经常会执行相同的指令和数据段(称为时间局部性)。在空间中,指令和数据往往是在某个本地存储空间中执行的(称为空间局部性)。有些程序段不能同时执行。或者根本就不要逃跑。
虚拟存储将程序所需的存储空间划分为若干页或段。程序使用的页和段存储在内存中,暂时不用时存储在外部存储器中。当使用外部存储器中的页和段时,它们被传输到存储器,反之亦然,它们被发送到外部存储器。加载到内存中的页或段可以分散。
上一篇:虚拟存储器可以把硬盘当作内存使用
下一篇:程序存储在内存还是外存