首先,我们来看一下Microsoft Windows的“帮助和支持中心”中的两个名词解释:(以下内容在Windows 2003 Enterprise Edition查询到并原样粘贴出来的)
虚拟内存
计算机使用的临时存储器,用来运行所需内存大于计算机具有的内存的程序。例如,程序可以访问计算机硬盘驱动器上 4 GB的虚拟内存,即使计算机只有 32 MB 的随机存取存储器 (RAM)。当前没有装入计算机内存的程序数据将保存到页面文件中。
页面文件
硬盘上的隐藏文件,Windows 用该文件来存储不能装入内存的程序和数据文件部分。页面文件和物理内存或随机存取存储器 (RAM) 组成虚拟内存。Windows 会在需要时将数据从页面文件移至内存,然后将数据从内存移至页面文件以便为新数据腾出空间。也称为“交换文件”。
根据上面蓝色部分的文字我们可以知道,运行程序时当物理内存不够用的时候,才会启用虚拟内存,如果仅仅按照这一点来说,网上流行的“拥有1G或更多大物理内存的用户可以禁用虚拟内存来提高系统性能”的说法是有一定道理的,但实际上,根据Microsoft对Windows的设计,Windows OS中的许多核心组件和功能都需要使用分页文件(不管有没有足够的物理内存),所以,当拥有高容量物理内存的用户禁用了所有分页文件后,首先开机会报错;其次,运行部分第三方应用软件时会遇到内存不足的报错(老版本的Photoshop图形处理软件就是一个典型的例子)。一般情况下,Windows并不会频繁的使用分页文件来做存储,因此,完全禁用虚拟内存并不是一个好的方法,这样只会在平时使用时增加更多的报错提示。
在Windows2K及以上系统中,虚拟分区对应的那个文件就叫页面文件,默认情况下在系统安装分区中,文件名为pagefile.sys,页面文件可以另外指定存放分区或每个分区指定一个。不光在Windows系统有虚拟内存这个概念,在Linux/Unix同样有这个概念,划分Linux分区的时候必须要指定一个SWAP分区(交换分区),这个Linux的SWAP分区相当于Windows的pagefile.sys。
[space]如果按照微软“建议虚拟内存设置为物理内存的1.5-2倍”的说法:我们在电脑物理内存增大的同时,虚拟内存也要设置得越来越大,这样明显是不合理的!所以,微软的说话套用在256M、512M物理内存用户的电脑上,还说的过去的!如果物理内存达到1G或更高,这就很矛盾了!
那具体要如何设置虚拟内存的大小呢?应该说根据不同的用户是不一样的设置方法!
下面是我在自己电脑上测试的结果:
操作系统:Windows 2003 Enterprise Edition 物理内存512M RAM 1000M 虚拟内存,已经运行IIS!
运行程序 |可用物理内存(MB) | 虚拟内存使用(MB)
开机 | 300 | 121 | (默认启动IIS Server)
Maxthon | 250 | 179 | (同时打开footbar播放MP3, 打开3个web页面)
PhotoShop | 235 | 259 | (打开一张图片)
RealPlayer | 210 | 296 | (播放245M大小的电影)
BlueSoleil | 135 | 365 | (已连接手机)
Virtual PC | 60 | 583 | (Alcohol 120%安装Linux)
所以一般情况下的普通用户,512M内存用户可以设定在800M-1G内存,如果有1G或以上的物理内存的用户,虚拟内存可以再设置的小一点。具体还是要因个人对电脑的的用途以及电脑本身的物理内存的大小而定。
转载请注明出处:麦麦的不老阁 » 《设置虚拟内存是物理内存1.5倍是否合理》










Leave a comment