物理記憶體

物理記憶體

物理記憶體(Physical memory)是相對於虛擬記憶體而言的。物理記憶體指通過物理記憶體條而獲得的記憶體空間,而虛擬記憶體則是指將硬碟的一塊區域劃分來作為記憶體。記憶體主要作用是在計算機運行時為作業系統和各種程式提供臨時儲存。常見的物理記憶體規格有256M、512M、1G、2G等,現如今隨著計算機硬體的發展,已經出現4G、8G甚至更高容量的記憶體規格。當物理記憶體不足時,可以用虛擬記憶體代替。在套用中,自然是顧名思義,物理上,真實存在的插在主機板記憶體槽上的記憶體條的容量的大小。看計算機配置的時候,主要看的就是這個物理記憶體

基本介紹

  • 中文名:物理記憶體(隨機存儲器
  • 外文名:Physical memory
  • 含義:記憶體條的容量的大小
  • 類別:計算機配置
  • 本質:代碼和數據在其中運行的視窗
  • 對比:虛擬記憶體
  • 主流配置:4G或以上
概念,套用中的描述,CPU中的描述,意義,記憶體限制,物理記憶體使用率過高,方法一,方法二,方法三,

概念

套用中的描述

物理記憶體計算機上的最重要的資源之一。Windows的記憶體管理器負責給活動進程、設備驅動,和作業系統自己分配記憶體。因為絕大多數系統所能訪問的數據代碼遠比物理記憶體多,所以從本質上來說,物理記憶體代碼和數據在其中運行的視窗。所以記憶體容量對性能有影響,因為如果進程或者作業系統所需的代碼或者數據不存在,記憶體管理器就需要從磁碟中讀取這些內容。

CPU中的描述

物理記憶體,CPU的地址線可以直接進行定址的記憶體空間大小。比如8086隻有20根地址線,那它的定址空間就是1MB。我們就說8086能支持1MB的物理記憶體。即使我們安裝了128M記憶體條在板子上,我們也只能說8086擁有1MB的物理記憶體空間。同理32位的386以上CPU,就可以支持最大4GB物理記憶體空間了。
虛擬記憶體物理記憶體的區別:虛擬記憶體就與物理記憶體相反,是指根據系統需要從硬碟虛擬地勻出來的記憶體空間,是一種計算機系統記憶體管理技術,屬於計算機程式,而物理記憶體硬體。因為有時候當你處理大的程式時候系統記憶體不夠用,此時就會把硬碟當記憶體來使用,來交換數據快取區,不過物理記憶體的處理速度是虛擬記憶體的30倍以上。

意義

除了會對性能造成影響,物理記憶體容量還會影響其他資源。例如,對於非分頁池來說,這是由物理記憶體提供後備的作業系統緩衝,很明顯,其容量會受到物理記憶體的限制。物理記憶體也會對系統的虛擬記憶體限制有影響,虛擬記憶體的大小等於物理記憶體容量、再加上所有頁面檔案的最大容量。物理記憶體還會對進程的最大數量具有間接的影響,筆者將會在今後的文章里專門提到執行緒和進程的限制。
Windows對於物理記憶體的支持,要受到諸如硬體限制、許可、作業系統數據結構,以及驅動程式兼容性等方面的綜合影響。MSDN網站的Memory Limits for Windows Releases文章對不同Windows版本、以及同一個版本的不同SKU的限制進行介紹。
我們可以查看所有Windows版本的不同SKU的物理記憶體支持許可。例如,32位Windows Server 2008標準版僅支持4GB,而32位Windows Server 2008數據中心版支持64GB。類似的,64位Windows Server 2008標準版支持32GB,而64位Windows Server 2008數據中心版支持2TB。記憶體,不過Windows Server性能產品組知道有兩台伺服器擁有那么多的記憶體,其中一台位於某地的實驗室。該伺服器的任務管理器如下圖所示:32位的最大限制是128GB,Windows Server 2003數據中心版可以支持,這是因為在大記憶體的系統上,記憶體管理器用來追蹤物理記憶體的結構,需要消耗更多系統虛擬地址空間。記憶體管理器把每個記憶體頁的追蹤數據保存在叫做PFN資料庫的數組中,而且考慮到性能因素,會把整個PFN資料庫映射到虛擬記憶體中。因為它用28位元組的數據結構來代表每個記憶體頁,128GB系統的PFN資料庫需要將近930MB的空間。32位Windows擁有4GB的虛擬地址空間,由硬體所定義,默認劃分為兩半,其中一半供用戶模式進程(例如Notepad)所使用,另一半供系統所使用。因此980MB的容量就要占據將近一半的系統虛擬地址空間(共2GB),只剩下約1GB空間可以用來映射核心、驅動程式、系統快取和其他系統數據結構:
微軟工程師微軟工程師

記憶體限制

64位Windows客戶端,不同SKU的記憶體支持也有所不同,Windows XP Starter版的記憶體支持最低,僅512MB,而Windows Vista旗艦版的記憶體支持最高,可達128GB。但是所有版本的32位Windows客戶端SKU,包括Windows Vista、Windows XP和Windows 2000 Professional,最大支持4GB物理記憶體。標準的X86記憶體管理模式,最大可以支持4GB的物理地址訪問。在早期,並不需要考慮在客戶端提供超過4GB的支持,因為當時很少有計算機配備那么高的記憶體,哪怕是伺服器。
但是在Windows XP SP2開發的過程中,已經可以預見客戶端計算機將會配備超過4GB的記憶體,所以Windows產品組對超過4GB的Windows XP計算機進行大量的測試。Windows XP SP2還支持物理地址擴展(PAE)功能,該功能本來是為了在硬體上實現非執行(NX)保護,因為這是數據執行保護(DEP)的必要條件,但是該功能還可以支持超過4GB的記憶體
Windows產品組的工程師發現,很多測試計算機會發生崩潰、掛起或者無法啟動的故障現象,這是因為某些設備驅動程式所導致的,主要是一些客戶端計算機(而非伺服器)上的顯示卡或者音效卡,其驅動程式在編寫時沒有考慮到記憶體大於4GB的情況。所以,這些驅動程式會截去那部分地址,從而導致記憶體衝突以及其他副作用。而伺服器則通常會配備更加常規的硬體設備,其驅動程式更加簡單穩定,因為通常來說碰到這些問題的幾率很小。由於客戶端設備驅動程式所存在的這些問題,迫使Windows客戶端SKU只能忽略高於4GB的那部分物理記憶體,哪怕從理論上來說可以對其進行定址。

物理記憶體使用率過高

方法一

安裝多一條物理記憶體。當然,這是解決問題的最根本最快的方法。2G記憶體現有來說,對於Win7也是剛剛好夠用,等我們安裝程式過多是必定會導致系統運行緩慢。如果可以的話,直接換成64位作業系統,讓系統更好的識別大記憶體,並調用。

方法二

安裝一些記憶體整理軟體,可以再運行大型程式是先運行記憶體整理軟體對記憶體進行整理。以緩解記憶體使用率過高。

方法三

設定更大的虛擬記憶體。虛擬記憶體的設定,必須為實際記憶體的1.5倍。
還要養成良好的防毒習慣,並對啟動項做相應的調整。減少不必要的啟動程式,清理外掛程式及服務。通過上述方法,可以很容易的解決物理記憶體使用率過高的問題。

相關詞條

熱門詞條

聯絡我們