好問題
您也不會是第一個有這疑問的
http://blog.tune-up.com/myth-buster...erfetch-on-vista-and-windows-7-is-a-bad-idea/
但像這位測試網兄關掉後並沒有增加
這篇裡面也有人問
http://bbs.pceva.com.cn/thread-38460-1-1.html
裡面提到這篇 官方說明
http://technet.microsoft.com/zh-tw/magazine/2007.03.vistakernel.aspx (繁中)
"注意 SuperFetch
您使用 Windows Vista 系統一段時間後,就會看到工作管理員之 [效能] 頁面上的可用實體記憶體計數器顯示低數量。這是因為 SuperFetch 和標準 Windows 快取會使用所有可用的實體記憶體來快取磁碟資料。例如,當您首次開機時,如果立即執行工作管理
員,應該會注意到隨著快取記憶體數量增加,可用記憶體值就會跟著減少。或者,您若是執行記憶體需求極大的程式,然後結束程式 (任何會配置大量記憶體,然後再釋放記憶體的「RAM 最佳化程式」免費軟體都行),或者剛剛複製很大的檔案,隨著系統收回已配置的記憶體,[可用] 的數量會增加,而 [實體記憶體使用量] 圖形會下降。但是,SuperFetch 會隨著時間將先前強制從記憶體移出的資料重新填入快取中,因此 [快取] 數量會增加,而 [可用] 數量會減少。"
"這是因為 SuperFetch 和標準 Windows 快取會使用所有可用的實體記憶體來快取磁碟資料。"
...................................~~~~~~~~~~~
這就是你要的答案
個人的解釋是
Superfetch是"主動"預讀的快取
但除此之外還有存在其他快取機制 不然這位微軟作者也不用多寫一個 "和"標準 Windows 快取
而這機制如Tom大叔這篇有提到
http://www.tomshardware.com/reviews/windows-vista-superfetch-and-readyboostanalyzed,1532-2.html
"Conventional Windows Caching"
"You might be aware that all Windows operating systems have a built-in caching mechanism. It is not very sophisticated and basically keeps application data in the main memory after program termination. This results in noticeably shorter application launch times in case the user decides to restart the program she or he has just terminated."
這個應該就是上面那篇講的標準Windows快取
也就是程式執行完畢後並不會把所有記憶體釋放
姑且稱它為被動快取吧 跟Superfetch主動預讀是不一樣的
我猜可能Vista以後不釋放的記憶體部分比以前版本又更多 所以看起來才那麼大
而第一篇快取沒甚麼增加的原因
也許只是剛開機沒多久和沒執行甚麼程式 你希望看到的情況是這個吧?
詳細快取原理或其他可能因素有興趣要請您自己去問上面那篇作者微軟Mark Russinovich大大或自行搜尋
問我我也不是甚麼都懂 還不是找可靠資料來的
您要是每個點都只會質疑而不會自己找資料的話那也沒甚麼好說的了 不是每個人都那麼閒