Win 2000/XP藍屏解決實用技巧

    雖然基于NT架構(gòu)的Windows 2000/XP系統(tǒng)穩(wěn)定性已經(jīng)大大增強,甚至Windows XP號稱“從不死機”,但我們?nèi)匀粫粫r看到如圖1所示的藍色警報信息,這就是通常所說的“藍屏”,究竟是怎么回事呢?

一、Windows 2000/XP爆發(fā)藍色警報的原因

Windows 2000/XP采用了分層結(jié)構(gòu),它的兩個層又稱模式,分別為用戶模式(User Mode)和內(nèi)核模式(Kernel Mode),應(yīng)用程序是無法直接訪問硬件設(shè)備的,只有借助驅(qū)動程序才能直接訪問。

不過,即使NT架構(gòu)再穩(wěn)定,由于會由于某些原因,例如硬件沖突、硬件產(chǎn)生問題、注冊表錯誤、虛擬內(nèi)存不足、動態(tài)鏈接庫文件丟失、資源耗盡等,此時可能會導(dǎo)致驅(qū)動程序或應(yīng)用程序出現(xiàn)錯誤,嚴(yán)重時甚至?xí)皟?nèi)核層。這種情況下,Windows會中止系統(tǒng)運行,并啟動名為KeBugCheck的功能,通過檢查所有中斷的處理進程,并同預(yù)設(shè)的停止代碼和參數(shù)比較后,屏幕將變?yōu)樗{色,并顯示相應(yīng)的錯誤信息和故障提示,由于出現(xiàn)這種現(xiàn)象時實際上就意味著死機,因此常稱為“Blue Screen of Death”(BSOD),又稱“STOP信息”或“停止信息”。

二、認(rèn)識藍色警報中隱藏的信息

Windows 2000/XP的BSOD窗口與Windows NT4以前的BOSD窗口有著很大的區(qū)別,最大的區(qū)別是NT的BSOD窗口僅包括一個通用的停止消息代碼,但Windows 2000/XP的BSOD包含了停止消息和硬件消息兩種類型,前者是發(fā)現(xiàn)一個無法恢復(fù)的軟件錯誤時產(chǎn)生的錯誤信息,后者是發(fā)現(xiàn)一個嚴(yán)重的硬件錯誤時產(chǎn)生的錯誤信息。

雖然圖1窗口中的信息看起來很復(fù)雜,但一般均由以下三部分組成:

1.錯誤信息

在“*** Stop:”至“****** wdmaud.sys”之間的這段內(nèi)容是所謂的錯誤信息,由出錯代碼、自定義參數(shù)、錯誤符號等三部分組成,各部分的含義如下:

出錯代碼:STOP后面的16進制數(shù)字;

自定義參數(shù):出錯代碼字符的組成,由程序人員定義,一般用戶很難理解;

錯誤符號:KMODE_EXCEPTION_NOT_HANDLED

在錯誤符號后面,這里還顯示了一個內(nèi)存位置和文件名,可以了解到發(fā)生錯誤時的內(nèi)存位置和源文件。對我們來說,其實最有用的還是前面的出錯代碼信息,在搜索微軟知識庫時將會用到。

Win 2000/XP藍屏解決實用技巧(圖二)

2.推薦操作

這里顯示了系統(tǒng)推薦用戶采取的操作措施和步驟,例如在安全模式下卸載程序、回滾驅(qū)動程序、更新BIOS、安裝補丁等,不過大部分情況下都需要重新啟動系統(tǒng)后才能考慮進一步的操作。

3.調(diào)試端口信息

這里會顯示應(yīng)該如何設(shè)置內(nèi)核調(diào)試器的信息,包括內(nèi)存轉(zhuǎn)儲映像是否已寫入磁盤、使用什么端口來完成這次調(diào)試。

其實,根據(jù)筆者的經(jīng)驗,藍色警報中除了出錯代碼比較有用外,對普通用戶來說,其余的大部分信息并無多少實際意義,僅供參考而已。

為調(diào)試系統(tǒng)的需要,Windows在系統(tǒng)出現(xiàn)BSOP錯誤后,KeBugCheck會自動生成一個名為Memory.dmp的偵錯文件,該文件位于C:WindowsMinidump文件夾下,默認(rèn)設(shè)置下,該文件的大小與系統(tǒng)物理內(nèi)存容量一致,我們可以將該文件壓縮后發(fā)送給微軟的技術(shù)支持部門,以獲取相應(yīng)的解決方案,但該文件的容量是如此巨大,如何發(fā)送是一個大問題,因此很少有用戶真正這樣做。

提示:打開“系統(tǒng)屬性→高級→啟動和故障恢復(fù)”窗口,如圖2所示,在這里可以看到“寫入調(diào)試信息”的生成方式:小內(nèi)存轉(zhuǎn)儲、核心內(nèi)存轉(zhuǎn)儲、完全內(nèi)存轉(zhuǎn)儲、無,基于上面的分析的原因,建議在這里選擇“無”。

Win 2000/XP藍屏解決實用技巧(圖三)

三、處理藍色警報三部曲

雖然Windows 2000/XP的藍色警報窗口顯示的信息可能各有不同,或者是硬件原因,或者是驅(qū)動程序與系統(tǒng)兼容性方面的問題,或者索性是應(yīng)用程序的某些Bug。首先當(dāng)然是排除病毒的原因,然后我們可以按照如下步驟進行處理:

第1步:重啟系統(tǒng)

出現(xiàn)藍色警報窗口時,我們首先應(yīng)該考慮的是重新啟動系統(tǒng),大部分情況下重啟系統(tǒng)后即可解決問題。不過,一般此時已無法通過“Ctrl+Alt+Del”熱啟動,而只能按下復(fù)位按鈕冷啟動,或者索性斷電后重新開機。

Win 2000/XP藍屏解決實用技巧(圖四)

進入系統(tǒng)時,從“控制面板→管理工具→事件查看器”,或者在“開始→運行”框中鍵入“eventvwr.msc”命令進入事件查看器界面,如圖3所示,在這里根據(jù)日期和時間重點檢查“系統(tǒng)”和“應(yīng)用程序”中的類型標(biāo)志為“錯誤”的事件,例如圖4報告某個服務(wù)啟動失敗的錯誤。

第2步:恢復(fù)至最后一次正確的配置

Windows 2000/XP出現(xiàn)藍色警報并不是無緣無故而來,NT架構(gòu)的操作系統(tǒng)也不會亂發(fā)脾氣,一般都是由于更新了設(shè)備驅(qū)動程序或者安裝了某些軟件而造成,有時甚至是用戶自行優(yōu)化系統(tǒng)或刪除了某些重要的系統(tǒng)文件所導(dǎo)致,此時可以重啟系統(tǒng),并快速按下F8鍵,選擇“最后一次正確配置”,這樣會恢復(fù)注冊表中HKEY_LOCAL_MACHINESystemCurrentControlSet項的有效注冊表信息,但無法解決驅(qū)動程序或文件損壞而導(dǎo)致的錯誤。

或者,你也可以嘗試按下F8鍵選擇啟動至安全模式,如果能夠正常進入安全模式,那么說明可能是驅(qū)動程序或系統(tǒng)服務(wù)的問題。

第3步:查詢出錯代碼

記下圖1窗口中的英文信息息,特別是“0x0000001E”這段出錯代碼,然后從另外一臺計算機上訪問http://support.microsoft.com站點,在左上角的“搜索(知識庫)”框中鍵入“stop ***”,這里的“***”表示出錯代碼,為閱讀的便利,一般當(dāng)然是選擇“中文知識庫”,不過很多時候我們恐怕只能在“英文知識庫”才能找到答案,或者也可以在Google或百度上進行搜索。

如果以上幾招還是無法解決問題,也許我們應(yīng)該考慮是否屬于硬件方面的問題,Windows XP可以訪問http://support.microsoft.com/default.aspx?scid=kb;zh-cn;314062查看硬件兼容列表(HCL),Windows 2000用戶可以訪問http://winqual.microsoft.com/download/display.asp?FileName=hcl/Win2000HCL.txt查看硬件兼容列表,然后可以考慮重新插拔內(nèi)存、顯卡、網(wǎng)卡,或者用替換法嘗試逐個更換,比較常見的是內(nèi)存問題或電源問題,如果這一招還不行的話,恐怕就只能考慮重新安裝系統(tǒng)或格式化硬盤了。

 

北大青鳥網(wǎng)上報名
北大青鳥招生簡章