Windows Vista提示內存不足的解決辦法
如今,內存越來越便宜,許多朋友為自己的PC配備了高容量的內存,以期得到理想的系統性能,1G、2G甚至更多內存的PC已經很常見了。但是,出乎許多朋友意料的是,即使Windows系統,不僅僅Windows Vista也包括Windows 2000/XP/2003,具有2GB甚至更多的內存,有時也會遇到Windows Vista提示“內存不足”警告的情況,或者雖無提示但程序窗口無法打開,或程序窗口雖然打開但卻不完整如缺少菜單、按鈕等,而事實上,這時仍有相當部分的物理內存閑置,頗令許多朋友困擾,難道為Windows配備這么大的內存便是一種浪費么?
在當Windows Vista提示“內存不足”,我們介紹過出現這種情況多是因為默認的Desktop Heap區間被占滿所致,并給出將desktop heap區大小從默認的3072KB提高到需要數值的辦法。不過,許多朋友依步驟進行調整后發現,仍然沒有從根本上解決這一問題,上述的故障仍然時不時地再次出現,那么,問題出在哪兒?
其實,在Windows NT 家族系統中,除了desktop heap區的限制外,默認的用戶句柄(User Handle)與GDI 句柄(GDI Handle)限制同樣是引發上述故障的原因之一,特別是考慮到之前系統物理內存普遍較少的客觀情況,默認的用戶句柄與GDI 句柄數量也成為Windows 阻止同時打開更多程序/窗口的另一個主要原因。
解決方案很簡單,那便是將默認的用戶句柄與GDI 句柄數量修改為較大的數值。
提高Windows默認的默認的用戶句柄與GDI 句柄數量
在Windows Vista開始菜單的搜索框中輸入“regedit”,按回車;
注冊表編輯將會觸發UAC而彈出提示窗口,點擊確認繼續;
按當Windows Vista提示“內存不足”介紹的方法,首先將desktop heap區的大小從默認的3072KB提高,檢查問題是否解決,如沒有解決,再嘗試以下的步驟;
找到如下注冊表分支:
HKEY_LOCAL_MacHINESOFTWAREMicrosoftWindows NT CurrentVersionWindows
在右側窗口中可以看到名為“GDIProcessHandleQuota”與“USERProcessHandleQuota”的注冊表項;
GDIProcessHandleQuota項設置GDI句柄數量,默認值為2710(16進制)/10000(10進制),該值的允許范圍為 256 ~ 16384 ,將其調整為大于默認的10000的值。如果您的系統配置了2G或更多內容,不妨將其設置為允許的最大值 16384(10進制);
USERProcessHandleQuota項設置用戶句柄數量,默認值同樣為2710(16進制)/10000(10進制),該值的允許范圍為 200 ~ 18000 ,將其調整為更多的數值。同樣地,對于具有2GB或更多物理內存的系統,不妨將用戶句柄數直接設置為上限 18000(10進制);
需要強調的是,修改“GDIProcessHandleQuota”與“USERProcessHandleQuota”值時,不要超過其接受的上限,不然,將導致Windows 無法工作或運行不穩定。另一方面,即使您的調整其超過其允許的上限,如果發現修改后Windows出現不穩定的癥狀,便需要將相應的數值調低些,或者恢復默認值。
注:修改注冊表存在風險,請謹慎操作,最好在修改前備份注冊表,以當系統故障時恢復。
注:本文轉自Vista之家