《面理解虚拟内存及优化方法》由会员分享,可在线阅读,更多相关《面理解虚拟内存及优化方法(4页珍藏版)》请在金锄头文库上搜索。
1、面理解虚拟内存及优化方法面理解虚拟内存及优化方法众所周知,操作系统的任务主要是合理地调配系统的各种资源,为各种程序提供运行环境,它可以被看做是硬件和应用软件之间的一种媒介。其中对内存的管理是系统的主要职责之一,怎样使有限的内存用在刀刃上,如何摆脱系统本身所需的内存“瓶颈”限制,是一个非常值得我们关心的问题。什么是虚拟内存不知大家发现没有,在 Windows 2000(XP)目录下有一个名为pagefile.sys 的系统文件(Windows 98 下为 Win386.swp) ,它的大小经常自己发生变动,小的时候可能只有几十兆,大的时候则有数百兆,这种毫无规律的变化实在让很多人摸不着头脑。其实
2、,pagefile.sys 是 Windows2000(XP)下的一个虚拟内存,它的作用与物理内存基本相似,但它是作为物理内存的“后备力量”而存在的,也就是说,只有在物理内存已经不够使用的时候,它才会发挥作用。虚拟内存的产生我们都知道,虽然在运行速度上硬盘不如内存,但在容量上内存是无法与硬盘相提并论的。当运行一个程序需要大量数据、占用大量内存时,内存就会被“塞满” ,并将那些暂时不用的数据放到硬盘中,而这些数据所占的空间就是虚拟内存。现在我们也明白为什么pagefile.sys 的大小会经常变化了。虚拟内存的优化虚拟内存的大小是由 Windows 来控制的,但这种默认的 Windows 设置并
3、不是最佳的方案,因此我们要对其进行一些调整。这样才能发挥出系统的最佳性能。1、改变页面文件的位置Windows 9x 的虚拟内存分页位置,其实就是保存在 C 盘根目录下的一个虚拟内存文件(也称为交换文件)Win386.swp,它的存放位置可以是任何一个分区,如果系统盘 C 容量有限,我们可以把Win386.swp 调到别的分区中,方法是在记事本中打开System.ini(C:Windows 下)文件,在386Enh小节中,将“PagingDrive=C:Windon386.swp” ,改为其他分区的路径,如将交换文件放在 D:中,改为“PagingDrive=D:Win386.swp” ,如没
4、有上述语句可以直接键入即可。而对于使用 Windows 2000 和 Windows XP 的,可以选择“控制面板系统高级性能”中的“设置高级更改” ,打开虚拟内存设置窗口,在驱动器卷标中默认选择的是系统所在的分区,如果想更改到其他分区中,首先要把原先的分区设置为无分页文件,然后再选择其他分区。2、改变页面文件的大小将虚拟内存的最大值与最小值都设为物理内存的 1.5 倍(这样设置后,系统无需根据虚拟内存的使用量来调节虚拟内存文件的大小,一方面节省了系统资源,另一方面可以有效减少磁盘碎片的产生)。3、禁用页面文件当拥有了 512MB 以上的内存时,页面文件的作用将不再明显,因此我们可以将其禁用。
5、方法是:依次进入注册表编辑器“HKEY_LOCAL_MACHINESystemCurrentControlSetControlSession Ma-nagerMemoryManagement”下,在“DisablePa-ging Executive”(禁用页面文件)选项中将其值设为“1”即可。4、清空页面文件在同一位置上有一个“ClearPageFileAtShutdown(关机时清除页面文件) ” ,将该值设为“1” 。这里所说的“清除”页面文件并非是指从硬盘上完全删除 pagefile.sys 文件,而是对其进行“清洗”和整理,从而为下次启动 Windows XP 时更好地利用虚拟内存做好
6、准备。5.双系统中共享虚拟内存-节省空间重新启动计算机并登录到 Windows XP,运行注册表编辑器,依次展开HKEY_LOCAL_MACHINESYSTEMControlSet001ControlSession ManagerMemory Management 分支,双击右侧窗口中的“PagingFiles”键值,将其值改为“C:win386.swp 200 200”(注意:中间的 200 前后各有一个空格)。依次展开HKEY_LOCAL_MACHINESYSTEMControlSet002ControlSession ManagerMemory Management 分支和HKEY_LO
7、CAL_MACHINESYSTEMCurrent ControlSetControlSession ManagerMemory Management 分支,按上述方法将“PagingFiles”键值改为“C:win386.swp 200 200” 。展开 HKEY_LOCAL_MACHINESYSTEMCurrent ControlSetControlBackupRestoreFilesNotToBackup 和HKEY_LOCAL_MACHINESYSTEMControlSet001ControlBackupRestoreFilesNotToBackup 分支,将以上分支下的“Memory Page File”键值均设置为“Win386.swp” 。现在退出注册表编辑器,重新启动计算机,登录到 Windows XP 后将Pagefile.sys 文件删除,至此大功告成!