虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续的可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。
与没有使用虚拟内存技术的系统相比,使用这种技术的系统使得大型程序的编写变得更容易,对真正的物理内存(例如RAM)的使用也更有效率。
虚拟内存不只是“用磁盘空间来扩展物理内存”的意思——这只是扩充内存级别以使其包含硬盘驱动器而已。把内存扩展到磁盘只是使用虚拟内存技术的一个结果,它的作用也可以通过覆盖或者把处于不活动状态的程序以及它们的数据全部交换到磁盘上等方式来实现。对虚拟内存的定义是基于对地址空间的重定义的,即把地址空间定义为“连续的虚拟内存地址”,以借此“欺骗”程序,使它们以为自己正在使用一大块的“连续”地址。
通过上面的介绍,可以发现,网上盛传的虚拟内存使用硬盘的说法并不准确,而且也给出了一个很明确的说法,使用虚拟内存不但不会拖慢物理内存的速度,反而会使得物理内存变得更有效率!
那么第一段的第二个问题就明白了,开不开虚拟内存呢?开!
虚拟内存开多少呢?
现在就剩下第一个问题了,虚拟内存开多少呢?怎么设置呢?下面在引用一段资料 (引自维基) Windows 用于实现虚拟内存的文件则以系统分区根目录下的页面文件 pagefile.sys(具有隐藏、系统属性)形式来保存。当物理内存与页面文件皆不够用时,系统会自动生成temppf.sys(意为temporary pagefile,临时页面文件)进行补足,temppf.sys的大小在页面文件的大小和最大值之间。
由于虚拟内存使用了硬盘,硬盘上非连续写入的文件会产生磁盘碎片,因此一旦用于实现虚拟内存的文件或分区过于零碎,会加长硬盘的寻道时间,影响系统性能。
有观点误认为Windows系统频繁读写pagefile.sys就会产生磁盘碎片,实则不然。因为pagefile.sys文件一旦创立,在分区中的分布连续形式就固定下来,文件内部读写并不增加或减少pagefile.sys的文件大小。仅当页面文件告罄后系统创建的temppf.sys会带来磁盘碎片。
上面那段如果你不爱看,可以看一下我总结的:
如果你设置的虚拟内存不够用了,就会建立临时虚拟内存,而这个临时的虚拟内存会导致性能下降,而且会产生磁盘碎片
虚拟内存设置这个主要看你的电脑是什么配置了,
1、如果你的内存小于4G,那么建议将虚拟内存设置为1.5倍或者2倍于你的物理内存;
2、如果你的内存4G-8G,那么建议将虚拟内存设置为1倍或者1.5倍于你的物理内存;
3、8G以上,那么建议将虚拟内存设置为1倍物理内存。