虛擬記憶體(頁面檔 pagefile.sys)常被誤解為「記憶體不夠才用的拐杖」,實則是現代作業系統記憶體管理的核心組件。正確配置能穩定系統、減少崩潰;錯誤設定則拖垮效能。本文從原理出發,解析設定邏輯與實戰優化方案。
Windows 記憶體管理器(VMM)實作「需求分頁」機制:
• 進程虛擬位址空間分頁(4KB)映射至實體記憶體頁框或頁面檔。
• 記憶體壓力時,VMM 依「最近最少使用」(LRU)演算法將非活躍頁面寫入頁面檔(Page Out),騰出實體頁框給高優先級進程。
• 頁面檔同時承擔:
1. 修改頁面的備份存儲(Modified Page Writer 寫入)。
2. 核心記憶體傾印(Crash Dump)目的地(需頁面檔 ≥ 實體記憶體 + 256MB)。
3. 超大位址空間應用(如 64 位 Photoshop、資料庫)的儲備空間。
因此,即使實體記憶體 64GB 仍建議保留頁面檔,僅調整大小與位置。
sysdm.cpl →「進階」→「效能」設定 →「進階」→「虛擬記憶體」變更。前提:> 擁有第二顆實體硬碟(HDD/SSD),且非系統磁碟分區。
原理: 系統磁碟同時處理 OS 讀寫、應用載入、頁面檔 I/O,形成爭用。分離後,頁面檔讀寫佔用獨立控制器/通道頻寬。
實測: 系統磁碟 SATA SSD + 頁面檔 NVMe SSD,記憶體壓力測試下頁面錯誤處理延遲降低 40%,大型應用切換流暢度明顯提升。
動態調整會導致頁面檔在磁碟上非連續分配,增加磁頭尋道(HDD)或擦寫放大(SSD)。固定大小確保連續空間分配。
建議值:
• 實體記憶體 ≤ 8GB:1.5 × RAM(初始=最大)。
• 8-16GB:1 × RAM。
• 16-32GB:0.5-1 × RAM(或固定 8-16GB)。
• 32GB+:固定 8-16GB 或僅保留核心傾印所需大小(RAM + 256MB)。
在 2-3 顆實體磁碟各建立固定大小頁面檔,VMM 會輪詢寫入(Round-robin),理論上可並行 I/O。
注意: 單顆實體磁碟多分區無效(同一磁頭);RAID 0 已條帶化無需分散;NVMe SSD 佇列深度極高,單一頁面檔已足夠,分散反而增加管理開銷。
| 誤區 | 事實 |
|---|---|
| 「記憶體大就能關閉頁面檔」 | 會導致核心傾印失效、大位址空間應用崩潰、記憶體洩漏進程耗盡實體記憶體觸發 OOM 殺死隨機進程。 |
| 「頁面檔設越大越好」 | 過大佔用寶貴磁碟空間,SSD 增加擦寫壽命損耗,HDD 增加尋道範圍。且實體記憶體不足時大量換頁本質上無法靠頁面檔大小解決。 |
| 「將頁面檔放在 RAM Disk(虛擬硬碟)」 | 循環邏輯:RAM Disk 佔用實體記憶體 → 迫使更早換頁 → 效能倒退。僅在 32 位系統 4GB 記憶體上限下利用 4GB+ 隱藏記憶體有意義。 |
| 「SSD 不適合放頁面檔」 | 現代 NVMe SSD TBW(總寫入量)極高,頁面檔寫入量佔比極低(日常 < 5GB/天),壽命影響可忽略。隨機讀寫優勢反而完美匹配頁面檔存取模式。 |
若需完整核心記憶體傾印(Complete Memory Dump)分析藍屏,頁面檔大小必須 ≥ 實體記憶體 + 256MB,且位於系統磁碟。若僅需核心傾印(Kernel Memory Dump,約 1/3 RAM)或小型傾印(256KB),無此限制。建議:開發/測試機啟用完整傾印,生產/個人機採核心傾印節省空間。
虛擬記憶體優化的本質是「減少不必要的換頁」與「加速必要的換頁」。根本解法永遠是增加實體記憶體;頁面檔設定只是輔助手段。掌握原理,按需配置,系統才能在記憶體壓力下穩定高效運行。