文件系統崩潰、病毒感染、硬盤控制器故障以及類似的其它災難都會導致Windows不可恢復的錯誤。當出現這種情況時,Windows以全屏、非窗口文本模式顯示此錯誤信息,這就是廣為人知的“藍屏死機(BSOD)”。
無論何時出現藍屏死機(代號BSOD)錯誤,這個錯誤都會發送一個Stop消息,這是一個簡短的錯誤消息,提示你有可能引起錯誤的原因。由硬盤的原因導致BSOD錯誤時,會發送以下5種不同的Stop消息。
Stop 0x0000007B or INACCESSIBLE_BOOT_DEVICE
這個錯誤消息只會在Windows啟動時發生。有兩種情況會導致這個錯誤:
Windows無法初始化硬盤。
Windows成功初始化硬盤,但是無法識別系統卷上的數據。
我曾經看到過的這類錯誤發生的原因一般都是由於硬盤控制器的設備驅動器崩潰或者不正確所致。(當系統從SCSI驅動器或RAID磁盤陣列啟動時,這種情況尤其普遍。)然而,文件系統崩潰、啟動區病毒或者與硬盤硬件問題也會導致這些錯誤。甚至,當在新系統的硬盤控制器中包含舊式的固件時也會發現這樣的錯誤。
Stop 0x00000050 or PAGE_FAULT_IN_NONPAGED_AREA
實際上,這個特殊的Stop錯誤通常並不是與硬盤相關,更多的時候,它是由於內存缺陷造成的。當系統試圖從內存讀取數據,卻找不到請求的數據時,就會產生這個錯誤。
當這個錯誤是由於硬盤的原因才產生時,通常,其原因可以歸結於崩潰的磁盤卷或者是硬盤cache內存缺陷。
Stop 0x00000024 NTFS_FILE_SYSTEM
在新一代的Windows版本中,這個錯誤信息幾乎通常要麼是由於NTFS卷上的系統文件崩潰,要麼是由於硬盤上存在壞塊。無論是這兩種情況中的哪一種,我都建議運行chkdsk工具,結合/F開關來更正這個錯誤。盡管chkdsk能夠修復很多硬盤類型的錯誤,但是使用chkdsk,必須重新安裝最新的Windows服務包(或者如果新的服務包還未開發時,需要重新安裝Windows),以便覆蓋原有的系統文件,呈現全新的版本。
老版本的Windows產生這一類錯誤信息的原因則不同。如果在共享卷上有太多的文件,AppleTalk驅動器就會觸發這個錯誤信息。使用不兼容的反病毒程序或硬盤工具也有可能引發這類錯誤。
0x00000077 or KERNEL_STACK_INPAGE_ERROR
這是另一個錯誤信息,產生這一類錯誤的原因有好幾個。錯誤本身的意思是,系統嘗試從頁面文件中讀取數據,但是無法定位到請求頁面。這通常是由於內存錯誤或者是存儲硬件問題所致,如數據帶松開、SCSI終止不正確或者是硬盤上存在壞扇區。如果另一個系統組件與硬盤控制器存在資源沖突,或者是發現病毒時,也會產生這個錯誤。
Stop 0x0000007A or KERNEL_DATA_INPAGE_ERROR
盡管這個錯誤涉及的是實際的頁面文件數據,而不是堆棧,但是實際上,這個錯誤被歸結為是KERNEL_STACK_INPAGE_ERROR一類的錯誤。唯一存在的不同就是,這個錯誤很少發生,當系統在非分頁池資源不足的情況下運行時,才會出現這個錯誤。