现在主流计算机的内存配置已经提升到128MB,不过对于庞大的Windows操作系统以及功能越来越强大、占用系统内存资源也越来越多的各种软件来说,128MB还是远远不能满足要求的,这时候Windows使用的页面文件(功能相当于我们常说的虚拟内存)就可以发挥其作用了。它将一部分硬盘空间设置为虚拟内存,从而扩大了计算机的可用“内存”空间来满足程序的运行要求。尽管由于硬盘的读取、传输速率等远远低于内存的速率,容易导致系统工作效率的降低和系统反应的延迟,但相对于花巨资购买硬件提高系统性能来说,这种以时间和效率来换取性能的做法还是非常不错的。
从Windows 3.X到 Windows 9X,虚拟内存技术的运用日渐成熟,在使用中通常是利用Windows安装目录中的Win386.swp这个交换文件来实现虚拟内存的创建。如今的Windows 2000采用页面文件的方式来实现虚拟内存的创建,此页面文件是安装逻辑盘根目录下的Pagefile.sys文件。它和Windows 9X下的交换文件的作用大致是一样的,都是当程序运行时主存空间不够用的时候用于创建虚拟内存的。通常,我们在使用时都是按照系统默认的设置让Windows操作系统管理虚拟内存,尽管这样做比较方便,但微软为了兼容广大计算机配置,自行设置的管理方式通常比较保守,因此它的工作效率常常不会令人满意。高级用户通常自己对Windows的虚拟内存管理进行优化处理(如自行定义交换文件的大小、位置等),来尽量获得比较高的工作效率。实践证明,正确地进行虚拟内存管理优化处理能够很好地提高系统的运行性能,Windows 9X是这样,Windows 2000更是这样。优化的关键就在于虚拟内存管理中的重要“部件”——页面文件(交换文件)。下面,我们就来详细地探讨一下Windows 2000页面文件的一些优化措施。
Windows 2000中关于页面文件的管理项目在控制面板中,进入“控制面板”后选择“系统”图标,然后在“高级/性能选项”中选择“更改”,就可以进入如所示的“虚拟内存”的设置页面。页面中显示着当前系统所设置的页面文件的大小、所在位置、磁盘可用空间以及微软的推荐设置值等,我们就结合页面文件的这些属性来谈谈优化的具体设置。
一、页面文件的大小
对于系统中页面文件设置的大小,微软的建议是页面文件的最小值(就是上图中的初始大小),应该是当前系统内存容量再加上12MB(RAM+12MB),若计算机系统拥有256MB内存的,就要将页面文件的最小值设置为268MB,这样才能让操作系统在崩溃或死机前将内存中全部的内容复制到硬盘上。对于那些系统内存容量小于256MB的用户,则建议将页面文件的最小值设得更大些,应该大于内存容量加12MB的数值:①那些使用128MB或者更少内存的计算机用户应该将当前系统内存容量的1.75倍设置为页面文件的最小值;②那些内存容量在128MB和256MB之间的用户则可以将当前系统容量的1.5倍设置为页面文件的最小值。当然,将页面文件的最小值设置为大于这些理论值,对于整个系统的运行是没有什么影响的,而且应该会更好些,唯一的损失也许也就是硬盘可用空间的相应减少。笔者的建议是,一般用户通常不需要按照微软上面的建议值进行设置,因为毕竟Windows 2000系统崩溃的机会大大小于Windows 9X,而且就算系统崩溃的话,进行的一般工作也没有重要到一定进行全部保存的地步,因此在设置页面文件时,只要保证其大小不小于系统内存的3/4,就可以保证系统比较稳定快速地运行了。但如果使用者的硬盘空间的确非常紧张的话,那么页面文件的最小值也应该至少和你的内存容量1/2相当,小于这个数字的话,将有可能经常性地引起系统崩溃(死机)现象的发生。
至于页面文件的最大值,则应该设置得越大越好,通常建议将它设置为最小值的2到3倍。使用者不必在意它的具体设置值。和Win9X系统的页面文件管理相比,Windows 2000要“智能”得多,它的页面文件是可以自己动态设置的。它仅在系统需要时才会自动扩充页面的大小,这样可以避免页面文件占用太多的硬盘空间并保证避免在复杂操作中因内存不足而出现错误。
二、页面文件的存放位置
Windows 2000允许使用者通过将页面文件分布到各个不同的物理硬盘上(注意是硬盘而不是分区)的方法来提高系统的执行性能。从理论上讲这样做的确是可行的,但是要注意的是由于各硬盘间可能存在的寻道时间、传输速度等方面的差异而导致的系统性能的下降,因此应该尽量选择速度最快的硬盘,作为页面文件的存放地。另外要注意的是,尽管Windows 2000也支持在同一硬盘多分区上分别建立页面文件,但这样做非但不能提高系统的性能,反而将明显地降低整个系统的工作效率,这是由于当操作系统需要读写页面文件时,如果需要读取的内容不在同一个分区的页面文件中时,硬盘磁头将频繁地在各个分区间移动,这将大大降低系统的运行效率。从实际的使用效果来看,这样做还不如将页面文件只集中存放到一个分区中来的好,因此,笔者建议拥有多硬盘的用户应该考虑以下的一些方案:①多硬盘之间的速度差异不大,可以将页面文件分布到各硬盘上去;②多硬盘之间的速度差异比较大,则应该将页面文件尽量存放到另外的速度较快的一个(或多个)硬盘上去。对于单硬盘的用户,如果硬盘可用空间允许的话,则应该尽量将页面文件的位置设置在同一的分区中。
三、页面文件的连续性
页面文件的连续性在Windows 2000的相关设置中并没有相应的显示,但笔者认为很有必要单独“拎”出来谈一谈。连续的页面文件的工作效率将比不连续的高很多,其中的原因和上面谈及的不要将页面文件设置在同一硬盘多个分区的道理是一样的,也在于硬盘磁头的移动问题,不连续的页面文件也将导致系统在使用虚拟内存时硬盘磁头频繁地在不连续的扇区间“跳”动,因此应该尽量保证页面文件的连续。大家可以运行Windows 2000自带的“磁盘碎片整理程序”并选择其中的“分析”功能来查看页面文件在硬盘上的相应位置现,其中显示的“绿色”区域(系统文件)就是页面文件所在位置。也许有些使用者对于页面文件会出现不连续的情况表示怀疑,那么可以试试下面的操作:如果使用者是双操作系统的话,可以先进入Windows 9X,将Windows 2000的页面文件Pagefile.sys剪切到其他分区或者硬盘中,然后再马上粘贴回去,重新启动系统到Windows 2000下,运行磁盘碎片整理程序”分析一下,绿色的区域将被分割为大大小小不同的好几个区域,页面文件这时就是零碎不连续的。
尽管Windows 2000提供的“磁盘碎片整理程序”要比Windows 9X下的好用得多,但是对于不连续的页面文件它还是无法进行整理。要进行页面文件碎片整理的话,需要第三方的相应工具,如Perfect Disk 2000以及Norton SystemWorks 2001(诺顿)的 Speed Disk等。另外,如果使用者没有这些工具而且页面文件所在分区或者硬盘不是NTFS格式的话,可以参照测试页面文件不连续情况下的操作方法。首先从双操作系统进入Windows 9X,然后将页面文件剪切到其他分区或者硬盘中,然后用Windows 9X下的磁盘整理工具对相应的分区或者硬盘进行整理,等整理完毕后再将页面文件重新粘贴回去,就可以保证页面文件的连续性了。