返回列表 回復 發帖

全面理解虛擬內存及優化方法

作者: wen 日期: 2008-12-16 01:04 閱讀: 1270打印 收藏
上次看到有個別網友還問到怎麼設置虛擬內存,現在就一步一步教大家設置!
全面理解虛擬內存及優化方法  

  眾所周知,操作系統的任務主要是合理地調配系統的各種資源,為各種程序提供運行環境,它可以被看做是硬件和應用軟件之間的一種媒介。其中對內存的管理是系統的主要職責之一,怎樣使有限的內存用在刀刃上,如何擺脫系統本身所需的內存“瓶頸”限制,是一個非常值得我們關心的問題。

  什麼是虛擬內存

  不知大家發現沒有,在Windows 2000(XP)目錄下有一個名為pagefile.sys的系統文件(Windows 98下為Win386.swp),它的大小經常自己發生變動,小的時候可能只有幾十兆,大的時候則有數百兆,這種毫無規律的變化實在讓很多人摸不著頭腦。其實,pagefile.sys是Windows2000(XP)下的一個虛擬內存,它的作用與物理內存基本相似,但它是作為物理內存的“後備力量”而存在的,也就是說,只有在物理內存已經不夠使用的時候,它才會發揮作用。

  虛擬內存的產生

  我們都知道,雖然在運行速度上硬盤不如內存,但在容量上內存是無法與硬盤相提並論的。當運行一個程序需要大量數據、占用大量內存時,內存就會被“塞滿”,並將那些暫時不用的數據放到硬盤中,而這些數據所占的空間就是虛擬內存。現在我們也明白為什麼pagefile.sys的大小會經常變化了。

  虛擬內存的優化

  虛擬內存的大小是由Windows來控制的,但這種默認的Windows設置並不是最佳的方案,因此我們要對其進行一些調整。這樣才能發揮出系統的最佳性能。

  1、改變頁面文件的位置

    Windows 9x的虛擬內存分頁位置,其實就是保存在C盤根目錄下的一個虛擬內存文件(也稱為交換文件)Win386.swp,它的存放位置可以是任何一個分區,如果系統盤C容量有限,我們可以把Win386.swp調到別的分區中,方法是在記事本中打開System.ini(C:\Windows下)文件,在[386Enh]小節中,將“PagingDrive=C:WindowsWin386.swp”,改為其他分區的路徑,如將交換文件放在D:中,改為“PagingDrive=D:Win386.swp”,如沒有上述語句可以直接鍵入即可。  

  而對於使用Windows 2000和Windows XP的,可以選擇“控制面板→系統→高級→性能”中的“設置→高級→更改”,打開虛擬內存設置窗口,在驅動器[卷標]中默認選擇的是系統所在的分區,如果想更改到其他分區中,首先要把原先的分區設置為無分頁文件,然後再選擇其他分區。
  

  2、改變頁面文件的大小

    將虛擬內存的最大值與最小值都設為物理內存的1.5倍(這樣設置後,系統無需根據虛擬內存的使用量來調節虛擬內存文件的大小,一方面節省了系統資源,另一方面可以有效減少磁盤碎片的產生)。

  3、禁用頁面文件

  當擁有了512MB以上的內存時,頁面文件的作用將不再明顯,因此我們可以將其禁用。方法是:依次進入註冊表編輯器“HKEY_LOCAL_MACHINESystemCurrentControlSetControlSession Ma-nagerMemoryManagement”下,在“DisablePa-ging Executive”(禁用頁面文件)選項中將其值設為“1”即可。


  4、清空頁面文件

  在同一位置上有一個“ClearPageFileAtShutdown(關機時清除頁面文件)”,將該值設為“1”。這裡所說的“清除”頁面文件並非是指從硬盤上完全刪除pagefile.sys文件,而是對其進行“清洗”和整理,從而為下次啟動Windows XP時更好地利用虛擬內存做好準備。

    5.雙系統中共享虛擬內存--節省空間

  重新啟動計算機並登錄到Windows XP,運行註冊表編輯器,依次展開HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Memory Management分支,雙擊右側窗口中的“PagingFiles”鍵值,將其值改為“C:\win386.swp 200 200”(注意:中間的200前後各有一個空格)。

  依次展開HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Session Manager\Memory Management分支和HKEY_LOCAL_MACHINE\SYSTEM\Current ControlSet\

  Control\Session Manager\Memory Management分支,按上述方法將“PagingFiles”鍵值改為“C:\win386.swp 200 200”。

  展開HKEY_LOCAL_MACHINE\SYSTEM\Current ControlSet\Control\BackupRestore\FilesNotToBackup和HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\BackupRestore\FilesNotToBackup分支,將以上分支下的“Memory Page File”鍵值均設置為“\Win386.swp”。

  現在退出註冊表編輯器,重新啟動計算機,登錄到Windows XP後將Pagefile.sys文件刪除,至此大功告成!

    ----------------------------------------------------------------------
    hiberfil.sys文件是系統休眠時將內存保存到這個文件中。它的大小始終和你的物理內存大小一致,

    如果你希望回收這個空間,下面的步驟可行:

    打開“控制面板”下的“電源管理”
    選擇使機器休眠選擇,在機器休眠選項頁上找到“從不”這一選項,選中這一項,系統會自動消除hiberfil.sys文件
2005.12.04不預期遇見什麼、才可能什麼都能遇見。
如果你是會員,有任何使用上的問題,請發短訊給我(wen)
如果你是訪客的話,註冊之後可以得到完整的瀏覽權限
返回列表