科技新知

MircoSoft PageFile.sys 存在與否的迷思 — Part 1

時代在進步,科技日新月異,記憶體與硬碟這兩樣東西容量越來越大,價格也越來越便宜了,便宜到現在的電腦記憶體幾乎都是2G起跳,硬碟也都250G以上為主流了。隨之而興起的就是RAMDISK這個功能,其實這個技術很久之前就有了,DOS時代的產物,直到最近又被大家拿出來熱烈的討論,原因無他只因為現在記憶體太便宜了,因此就有很多人拿討論多餘的記憶體能夠拿來做什麼,LEO之前也整理出來一系列的用法Windows XP、Vista 加速篇–EPC、工人舍SH、SA、可用,但是Pagefile本身的開啟與關閉就頗具爭議,LEO是站在開啟並放置RAMDISK之上的一派,但是基於求知慾的驅使,開始研究其運作原理與相關的知識,LEO不是資訊科本科出身的,只是一個無意間走到資訊這條路的機械科的羔羊,因此對於這種學術派的東西基本上不是很了解,會去研究是因為在使用RAMDISK的時候所衍生出來的,目前LEO也都還在積極的尋找一個能夠說服LEO自己的解答,到底Pagafile是否要關閉呢?????還是將其挪至RAMDISK上面???,目前並沒有人能夠提出有力的證據與說明,於是LEO做了以下的實驗,不知道各位看了會有啥想法,也希望知道原裡的人可以解答一下或者指點一下迷津,讓LEO這隻迷途的羔羊能夠找到方向,尋求真理了。
實驗一

  1. 關閉虛擬記憶體。
  2. 使用 PageFileUsageMonitor.exe 即時監看使用狀況。
  3. 使用內建工作管理員檢視記憶體與虛擬記憶體使用狀況。

結果如下點我看大圖

實驗二

  1. 設定虛擬記憶體大小為256並放置RAMDISK當中。
  2. 使用 PageFileUsageMonitor.exe 即時監看使用狀況。
  3. 使用內建工作管理員檢視記憶體與虛擬記憶體使用狀況。

結果如下點我看大圖

實驗產生的疑惑

  1. 在實驗一當中,既然都關閉了Pagefile為何工作管理員當中的 “虛擬記憶體大小欄位” 仍然有使用的數據?那關閉Pagefile的意義在哪裡?
  2. 在實驗二當中,已經設定256MB的Pagefile,實體記憶體也還沒用盡,為何會開使用到Pagefile的空間呢?
  3. 工作管理員當中的 “虛擬記憶體大小”欄位等於Pagefile的容量?
  4. 如果第三點所提及的部分答案是等於的,那為何在實驗二當中的數據是不相符的?
  5. 如果第三點所提及的部分答案是不等於的,那工作管理員當中的”虛擬記憶體大小”指的又是什麼?

實驗用軟體下載
PageFileUsageMonitor.exe
延伸閱讀
3C軟體文章一覽表
MircoSoft Pagefile 的存在與否? Part 2

關於作者

Leo

Leo

喜愛旅遊並沉迷科技應用數十年無法自拔的重度 3C 上癮者!

3 回應

  • 我本身是資訊相關科系, 其實你的疑問在\"作業系統\"課程中有提到。
    1. Virtual Memory 本身泛指 Physical Memory + Pagefile, 所以你關掉Pagefile之後, Virtual Memory 的大小 = Physical Memory 的大小.
    2. Windows 在開啟應用程式的時候, 就會預先占掉一部分的 Pagefile,
    這時候 Pagefile 的內容等於記憶體的內容. 為什麼呢 ? 當系統記憶體不足的時候, Windows 可以直接把記憶體內容清掉, 反正硬碟上還有一份. 但這個設計我不喜歡, 在記憶體充足的情況下他只會拖慢你的速度, Linux下也沒有這設計.
    版主回覆:(11/22/2009 03:48:54 PM)
    恩 我朋友推薦我去看恐龍書,東華出版的,找機會來去書局翻翻,不過我有稍微去了解一下原理,還不是很懂,才會用土法煉鋼的方式來做一些測試,畢竟MS的把很多東西都包起來,誰也不知道他的運作原理,網路上的文章真真假假,反倒是MS自己的網站對於這些東西都沒有說明,因此才會有很多疑問,目前只看到PAGE TABLE這段,希望可以把這問題釐清。
    不過你提到硬碟上還有一份,這是在哪邊的文獻資料有講到這段呢??????
    LINUX就很單純的SWAP而以並沒有什麼了不起的技術與設計,不像MS搞得神神祕密誰都不知道他在幹嘛,難怪他可以大賣,一賣就好幾年…………

  • 恐龍書相當有名,但也很抽象,建議板主可以配合另一本Insides Windows 2000來看,這本書也很
    精彩,而且實務多了。
    微軟的文件系統其實很豐富,不過似乎google不太會去檢索他。一般稱為MSDN Library,以前光是
    文件就可以放三張CD了, 這還是他們會定期淘汰舊文件才這麼少 (如Winddows 95, Windows 98在新
    版的MSDN Library就找不到了). 我大概找到一篇文章是討論 Page File, 希望能回答板主的疑問.
    http://msdn2.microsoft.com/en-us/library/ms810616.aspx
    至於 "硬碟上還有一份" 是五六年前就看過了的文章, 看看書裡面, 或是 MSN Library 裡面是否有解釋
    吧. 其實找台慢一點的硬碟(e.g. notebook), 把 Pagefile 關掉, 然後觀察硬碟使用量大幅降低就是很好
    的驗證了.
    版主回覆:(11/22/2009 03:48:54 PM)
    感謝指點,LEO最近會來努力研究相關文獻資料,到時後再來跟您討教討教了。

  • 謝謝你的文章,即使你不是相關科系,追求實務與驗證的精神令人受惠良多。

發表評論