修正WIN9X記憶體超過512 MB【教學】【轉貼】





2002-07-27, 10:19 AM
如果你的實體記憶體超過512MB且作業系統為WIN9X系列的需要修改一些系統檔。

Windows 9x 系列(Windows 95/98/Me)是可以支援到 2GB 的記憶體,
Windows 2000 是4GB。
既然是 2GB,那麼為什麼當實體記憶體超過512 MB 的時候(例如安裝了 768 MB),
反而很容易出現記憶體不足的訊息呢?

這是受限於 Windows 9x 的快取動程式的問題(32-bit protected mode cache driver)。

每當Windows 啟動的時候Windows 的快取驅動程式,會根據電腦實際上RAM的數量,
來決定虛擬快取記憶體的大小,RAM 越大,虛擬快取區就越大。

然而,整個作為系統虛擬快取的記憶位址空間範圍大約是 3-4 GB
﹙從0xC0000000 到 0xFFFFFFFF ﹚,所以當你的記憶體多過某個數量的時候,
整個系統虛擬記憶位址會完全被虛擬快取驅動程式給吃光了,
Windows 其他的功能就沒有虛擬空間可用,於是就出現記憶體不足的訊息。

要是我的記憶體超過 512 MB 該怎麼辦呢?
在System.ini中限制虛擬cache 的大小不超過 512MB 就可以避開這個問題。

在 system.ini 中加入
[vcache]
MaxFileCache=524288
( 因為 1MB=1024K,所以524288K =512MB,所以值是524288,不超過這個值即可。)

另外,如果記憶體超過512MB ,同時又使用AGP 顯示卡的話,
這種記憶體不足的問題會更加明顯,
因為AGP 顯示卡一定會佔用一部分虛擬位址空間做映射(應該是滿大的),
而剩下所能供系統程式碼正常運作的虛擬空間也就更少了。

從這裡我們也可以學到:對 Windows 9x 系統而言,記憶體不見得越多越好,
太多,反而惹麻煩,記憶體夠用就好。

每種作業系統都有它的「目標市場」,對 9x ﹙Me﹚而言,目標是家庭,
所以應該是不會有人在家用等級 PC 上安裝1GB 的記憶體,
如果有迫切的高容量記憶體需求,應該是選用Windows NT等級的作業系統,
如 Windows NT4 或 Windows 2000 或 Windows XP等。




網路不安全
2002-07-27, 11:46 AM
是喔。:corkysm: 測試過了,各有利弊,不是上面那個方法好喔。 :D

milwater
2002-07-27, 12:28 PM
兩者好像是不一樣的東西吧,
一個是限制Virtual Cache, 一個是限制記憶體的使用量,
前者的效能還是會比後者好哦~
:)

范靜善
2002-08-10, 11:08 PM
請問一下~~,我的是windows98第二版,ram剛好是512mb (256*2) ~~
那我需不需要加上那幾行字呢??
因為我最近常常會出現藍底白字的情形~~
A fatal exception 0E has occurred at 0028:c004F350 in VXD VCACHE(01)
+ 00000B20.The current application will be terminated.
加上那幾行字會有所改善嗎?
十分感謝您的回答~