Windows Vista對內(nèi)存管理的方法與其他windows可不同.從下圖的任務(wù)管理頁面的物理內(nèi)存參數(shù)項(Physical Memory)可以看到:
Windows Vista任務(wù)管理器
只有6M內(nèi)存顯示的是空閑狀態(tài),而此刻Vista系統(tǒng)上僅僅運行了IE7瀏覽器的幾個窗口和幾個遠程桌面管理程序而已。為什么只運行了很少的應(yīng)用卻只剩下6M的空閑物理內(nèi)存了呢?
下面的圖片反映的是運行類似應(yīng)用的XP系統(tǒng)的任務(wù)管理器頁面的參數(shù)表現(xiàn):
Windows XP任務(wù)管理器
在可用物理內(nèi)存參數(shù)(Physical Memory, AVailable)項上大約有1.5Gb的物理內(nèi)存可用呢。
Vista用掉了系統(tǒng)所有內(nèi)存(原因)
究竟怎么回事呢?為什么在Vista上運行這么一點應(yīng)用就消耗了這么多的物理內(nèi)存呢?
為了揭開這個疑惑?讓我們先來考察一下寫字板應(yīng)用程序的工作原理,以便認(rèn)識計算機物理內(nèi)存的用處,假設(shè)用戶需要利用寫字板程序來創(chuàng)建一個新的文本文件:
看起來寫字板程序執(zhí)行僅需要消耗很少的內(nèi)存,另外顯示保存文本內(nèi)容的內(nèi)存也不是很多,最多幾兆不得了了,那剩下的系統(tǒng)內(nèi)存用到哪里去了呢?
現(xiàn)在你必須把內(nèi)存當(dāng)作緩存來看待,就象是cpu中的第一級緩存和第二級緩存那樣,內(nèi)存也是存在計算機中心計算單元和存儲數(shù)據(jù)的磁盤介質(zhì)之間的另外一種高速緩存裝置。
而緩存裝置的重要設(shè)計規(guī)則就是:“空閑的緩存就是浪費了的緩存”,空緩存對用戶是沒有幫助的。每種緩存的主要目的就是盡量提高所需數(shù)據(jù)處理的速度,否則你還不如直接到硬盤等磁盤介質(zhì)中去取數(shù)據(jù)來完成運算。硬盤中直接提取數(shù)據(jù)到處理器進行運算是非常慢的。
2006年1月份,工程師Diomidis Spinellis在普通辦公電腦上總結(jié)出了緩存性能比例的一張參考表:
總結(jié)上表數(shù)據(jù)可以看出,各種緩存比硬盤快出的倍數(shù):
上面的數(shù)據(jù)解釋了為何在VISTA下的空閑物理內(nèi)存只有6兆的原因,Vista把絕大多數(shù)物理內(nèi)存都當(dāng)成了一個名叫超級預(yù)存取塊,即 SuperFetch的緩存裝置,Vista利用SuperFetch內(nèi)存緩存裝置,動態(tài)地把系統(tǒng)經(jīng)常需要用的后臺程序和磁盤數(shù)據(jù)預(yù)先提取到緩存中,隨時加速應(yīng)用的運行。這就是Vista管理內(nèi)存不同與XP等系統(tǒng)的地方。
SuperFetch的內(nèi)存管理設(shè)計方法,對玩大型的游戲程序時,表現(xiàn)的效果尤為突出,比如BattleField 2游戲。
Windows Vista任務(wù)管理器
只有6M內(nèi)存顯示的是空閑狀態(tài),而此刻Vista系統(tǒng)上僅僅運行了IE7瀏覽器的幾個窗口和幾個遠程桌面管理程序而已。為什么只運行了很少的應(yīng)用卻只剩下6M的空閑物理內(nèi)存了呢?
下面的圖片反映的是運行類似應(yīng)用的XP系統(tǒng)的任務(wù)管理器頁面的參數(shù)表現(xiàn):
Windows XP任務(wù)管理器
在可用物理內(nèi)存參數(shù)(Physical Memory, AVailable)項上大約有1.5Gb的物理內(nèi)存可用呢。
Vista用掉了系統(tǒng)所有內(nèi)存(原因)
究竟怎么回事呢?為什么在Vista上運行這么一點應(yīng)用就消耗了這么多的物理內(nèi)存呢?
為了揭開這個疑惑?讓我們先來考察一下寫字板應(yīng)用程序的工作原理,以便認(rèn)識計算機物理內(nèi)存的用處,假設(shè)用戶需要利用寫字板程序來創(chuàng)建一個新的文本文件:
看起來寫字板程序執(zhí)行僅需要消耗很少的內(nèi)存,另外顯示保存文本內(nèi)容的內(nèi)存也不是很多,最多幾兆不得了了,那剩下的系統(tǒng)內(nèi)存用到哪里去了呢?
現(xiàn)在你必須把內(nèi)存當(dāng)作緩存來看待,就象是cpu中的第一級緩存和第二級緩存那樣,內(nèi)存也是存在計算機中心計算單元和存儲數(shù)據(jù)的磁盤介質(zhì)之間的另外一種高速緩存裝置。
而緩存裝置的重要設(shè)計規(guī)則就是:“空閑的緩存就是浪費了的緩存”,空緩存對用戶是沒有幫助的。每種緩存的主要目的就是盡量提高所需數(shù)據(jù)處理的速度,否則你還不如直接到硬盤等磁盤介質(zhì)中去取數(shù)據(jù)來完成運算。硬盤中直接提取數(shù)據(jù)到處理器進行運算是非常慢的。
2006年1月份,工程師Diomidis Spinellis在普通辦公電腦上總結(jié)出了緩存性能比例的一張參考表:
總結(jié)上表數(shù)據(jù)可以看出,各種緩存比硬盤快出的倍數(shù):
上面的數(shù)據(jù)解釋了為何在VISTA下的空閑物理內(nèi)存只有6兆的原因,Vista把絕大多數(shù)物理內(nèi)存都當(dāng)成了一個名叫超級預(yù)存取塊,即 SuperFetch的緩存裝置,Vista利用SuperFetch內(nèi)存緩存裝置,動態(tài)地把系統(tǒng)經(jīng)常需要用的后臺程序和磁盤數(shù)據(jù)預(yù)先提取到緩存中,隨時加速應(yīng)用的運行。這就是Vista管理內(nèi)存不同與XP等系統(tǒng)的地方。
SuperFetch的內(nèi)存管理設(shè)計方法,對玩大型的游戲程序時,表現(xiàn)的效果尤為突出,比如BattleField 2游戲。