執行程式時出現 Out of memory 或「記憶體不足」,指系統無法分配足夠可用記憶體給應用程式。
CONFIG.SYS 載入 HIMEM.SYS 並啟用 EMM386.EXE RAM 參數,提供擴充記憶體 (EMS) 支援。MEM /C /P 檢視傳統記憶體 (640KB 以下) 使用情況,找出佔用大戶 (TSR 程式、驅動程式)。DOS=HIGH,UMB 將 DOS 核心移入高記憶體區 (HMA) 騰出傳統記憶體。現象:載入 HIMEM.SYS + DOS=HIGH 後 WPS 無法啟動,提示記憶體不足。
原因:WPS 字庫需使用 INT 15h 傳統擴充記憶體低端區域,與 DOS 核心衝突。
解決:
DOS=HIGH,讓 DOS 核心留在傳統記憶體。DEVICE=HIMEM.SYS /INT15=320 預留 320KB 給 INT 15h 介面,字庫與 DOS 核心共存。| 原因 | 對策 |
|---|---|
| 實體記憶體過小 (XP 建議 ≥1GB, Win7 建議 ≥4GB) | 加裝記憶體條,最具成效 |
| 開機啟動項目過多佔用記憶體 | msconfig 精簡、移除常駐軟體 |
| 記憶體洩漏程式 (Firefox 舊版、某些驅動) | 更新軟體/驅動、定期重開機 |
| 虛擬記憶體設定過小或放在慢速磁碟 | 調整大小、移至 SSD/快速機械硬碟 |
| 32 位元系統 4GB 限制 | 升級 64 位元作業系統 |
建立批次檔 freemem.bat:
@echo off rundll32.exe advapi32.dll,ProcessIdleTasks empty.exe * (需下載 Windows 2000 Resource Kit 工具)
執行可釋放待用記憶體,緩解當下壓力。