相信大家的Windows 9x都曾遇到“莫名其妙”的“藍屏”,并提示“致命的異常錯誤0E發生在……”,使其它正在運行的軟件被迫中斷,給自己帶來很大的損失和麻煩,而自己又不知是何原因、如何排除,因此非常煩惱。下面我們就來分析一下其中的原因,并盡量找出適當的對策。
要弄清楚出錯原因,得從Windows 9x對內存的管理和使用談起。我們知道,Windows 9x是32位操作系統,對內存具有32位尋址能力,可以發揮80386以上CPU所具有的保護模式功能,為每個應用程序提供獨立的4GB地址空間,但事實上,這遠遠超過了目前大部分PC機的內存容量,這就造成了有4GB地址空間,而無真正物理內存與之對應的問題。于是,Windows 9x便利用CPU的虛擬內存能力,把硬盤的一部分當作內存(硬盤交換文件)來使用,即通常所說的虛擬內存(見圖)。現在很多用戶配置的硬盤容量一般都較大,這下似乎有了用不完的內存,不會發生內存不夠的情況了。其實不然,首先,能作虛擬內存的必須是硬盤上的空余空間,而且這些被分若干塊的空間連續長度必須是512K的整數倍,才能被用作虛擬內存;第二,CPU在RAM存取數據的速度遠遠快于RAM與硬盤交換數據的速度。這樣,有時就會發生應用程序存取當前不在RAM中而在交換文件中數據的情況,這時,CPU就會產生異常錯誤0E(也稱為頁面異常),但此時屏幕上不會有任何提示,Windows 9x嘗試繼續運行,只有當應用程序存取數據的地址或者將要跳轉到的地址根本就沒有分配RAM或虛擬內存時(即出現頁面無效),Windows 9x才顯示“異常錯誤發生……”,這下它真不行了,提示用戶中止程序運行。
引起該錯誤的原因很多,相應有不同的處理方法:
1.CPU超頻。這是最近很多人電腦發生上述故障的一個重要原因。超頻提高了CPU的工作頻率,同時也使其性能變得不穩定,尤其是在炎熱的夏季,這個問題暴露得更加明顯。究其原因,CPU在RAM存取數據的速度本來就快于RAM與硬盤交換數據的速度,超頻使這種矛盾更加突出,同時由于氣溫升高,構成CPU等電子元器件材料的指標參數也發生微妙變化,加劇了在RAM或虛擬內存中找不到需要數據的情況,這樣就會出現“異常錯誤”。解決辦法:降低頻率,使CPU工作在規定的正常頻率,同時使用“降溫”軟件,清掃CPU風扇等。
2.硬盤剩余空間太少或碎片太多。前面已經談到,硬盤上能作虛擬內存的必須是自由空間,而且空間連續長度必須是512K的整數倍。如果你的硬盤還只有幾百MB,出現“異常錯誤”與此很可能有關,當然,就算硬盤容量再大,隔一段時間進行一次碎片整理也是非常必要的。
3.Windows啟動的程序過多。系統資源消耗殆盡,使個別程序需要的數據在內存或虛擬內存中找不到,也會出現異常錯誤。解決辦法:不要同時啟動過多的程序,一個簡單的監測方法是,隨時打開Windows各窗口上“幫助”→“關于…”,看系統資源還剩多少,低于60%就應該小心了,不要再啟動新的程序、打開新的窗口了。萬一因此發生“異常錯誤”,只需重新啟動系統就正常了。順便說一句,有的朋友喜歡“Shift + 重新啟動計算機”,雖然重新啟動的速度較快,但系統資源并不能完全釋放,所以本人建議大家還是以正常方式重新啟動計算機。
4.系統沖突。經常遇到的是由于聲卡或顯卡的設置沖突,引起異常錯誤。此外,其它設備的中斷、DMA或端口出現沖突的話,可能導致少數驅動程序產生異常,甚至無法正常啟動Windows 9x。解決辦法:以“安全模式”啟動,在“控制面板→系統→設備管理”中進行適當調整,一般可以解決。對于在驅動程序中產生異常錯誤的情況,可以修改注冊表。選擇“開始/運行”,鍵入“Regedit”,進入注冊表編輯器,通過菜單下的“查找”功能,找到并刪除與驅動程序前綴字符串相關的所有“主鍵”和“鍵值”,重新啟動。
5.程序設計問題。部分程序在編制時內存分配不合理(Windows的Bug都不少),完成后又未經過嚴格測試,在特殊的運行條件下就會因找不到內存分配地址而頻頻出錯。還有,編制時考慮不周,程序只適用于特殊型號、種類的硬件,如果遇到其它硬件時也會出錯。順便說一句,一些盜版軟件因解密過程中破壞、丟失了部分源代碼,也常常導致“異常錯誤”的發生。因此,還是用正版軟件的好,以免前功盡棄。
本新聞共2頁,當前在第1頁12
上一條:如何才能讓電腦不死機