虚拟内存和物理内存之间的区别

物理内存 
1、应用中的概念 
物理内存,在应用中,自然是顾名思义,物理上,真实的插在板子上的内存是多 大就是多大了。看机器配置的时候,看的就是这个物理内存。 
2、CPU中的概念 
物理内存,CPU 的地址线可以直接进行寻址的内存空间大小。比如 8086 只有 2 0 根地址线,那它的寻址空间就是 1MB。我们就说 8086 能支持 1MB 的物理内存。 即使我们安装了 128M的内存条在板子上,我们也只能说 8086 拥有 1MB 的物理内存 空间。同理 32 位的 386 以上 CPU,就可以支持最大 4GB的物理内存空间了。 
虚拟内存 
概述 
虚拟内存是计算机系统内存管理的一种技术。 它使得应用程序认为它拥有连续的可用的内存 (一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分 暂时存储在外部磁盘存储器上,在需要时进行数据交换。 
简介 
如果计算机缺少运行程序或操作所需的随机存取内存 (RAM),则 系统使 用虚拟内存进行补偿。 
虚拟内存将计算机的 RAM 和硬盘上的临时空间组合在一起。当 RAM 运行速 度缓慢时,虚拟内存将数据从 RAM 移动到称为“分页文件”的空间中。将数据移入与 移出分页文件可以释放 RAM,以便完成工作。 
一般而言,计算机的 RAM 越多,程序运行得越快。如果计算机的速度由于缺少 RAM 而降低,则可以尝试增加虚拟内存来进行补偿。但是,计算机从 RAM 读取 数据的速度要比从硬盘读取数据的速度快得多,因此增加 RAM 是更好的方法。 
作用 
不知大家有没有发现,在 Windows2000(XP)目录下有一个名为pagefile.sys的 系统文件(Windows98 下为 Win386.swp),它的大小经常自己发生变动,小的时候可能只有几十兆,大的时候则有数百兆,这种毫无规律的变化实在让很多人摸不着头 脑。其实,pagefile.sys 是 Windows 下的一个虚拟内存,它的作用与物理内存基本相 似,但它是作为物理内存的“后备力量”而存在的,但是,它并不是在只有物理内存不 够用时才发挥作用的,也就是说在物理内存够用时也有可能使用虚拟内存,如果你虚 拟内存设置过小则会提示“虚拟内存不足”。 

产生 
我们都知道,虽然在运行速度上硬盘不如内存,但在容量上内存是无法与硬盘相 提并论的。当运行一个程序需要大量数据、占用大量内存时,内存就会被“塞满”,并 将那些暂时不用的数据放到硬盘中,而这些数据所占的空间就是虚拟内存。现在我们 也明白为什么 pagefile.sys 的大小会经常变化了。 
内存在计算机中的作用很大,电脑中所有运行的程序都需要经过内存来执行,如 果执行的程序分配的内存的总量超过了内存大小,就会导致内存消耗殆尽。为了解决 这个问题,Windows 中运用了虚拟内存技术,即拿出一部分硬盘空间来充当内存使 用,当内存占用完时,电脑就会自动调用硬盘来充当内存,以缓解内存的紧张。 
举个例子来说,压缩程序在压缩时有时候需要读取文件的很大一部分并保存在内 存中作反复的搜索。假设内存大小是 128MB,而要压缩的文件有 200MB,且压缩软 件需要保存在内存中的大小也是 200MB,那么这时操作系统就要权衡压缩程序和系 统中的其他程序,把多出来的那一部分数据放进交换文件。

文章出处http://wenku.baidu.com/link?url=ICUptrN0l0u4XnLk_aJjY8oKvzxM68geJIqQTNcCZ-188XknWo9utnEcNm_XUGzNKcI-K-gNd4H7Ref2ZO_KmUI1_MG7Bw8L576AMEmkZYC

原文地址:https://www.cnblogs.com/jasonxu19900827/p/5256925.html