開啟主選單

求真百科

藍屏死機

電腦藍屏,是指微軟Windows操作系統在無法從一個系統錯誤中恢復過來時所顯示的藍底白字的屏幕圖像。

Windows中有兩個藍底白字圖像都被稱為藍屏死機:一種是Windows 9x操作系統發生小故障,一種是Windows NT發生內核錯誤。由於Windows 9x已退出歷史舞台,所以現在一般指後者。

目錄

基本信息

名稱; 電腦藍屏

又名; 藍屏死機

英文; Blue Screen of Death

縮寫; BSoD

編寫者; 史蒂夫·鮑爾默

平台; 微軟Windows系列操作系統

現象說明; 藍屏,英文名稱BSOD。從專業的角度講,這一術語被定義為"是指當Microsoft Windows崩潰或停止執行(由於災難性的錯誤或者內部條件阻止系統繼續運行下去)時所顯示的藍色屏幕"。

而我們平常所說的"系統崩潰"或者"內核錯誤"或"停止錯誤"的專業術語為"程序錯誤檢查"。

在Windows Vista部分測試版中,死機則變成了紅色,稱為紅屏死機(Red screen of death,縮寫RSoD)

界面信息

Windows95、98和Me Windows95、Windows 98和WindowsMe的藍屏均如右圖所示。可以看見,當時的藍屏界面信息還非常少,系統甚至將藍屏錯誤與"系統忙、無法響應"混為一談,並且還可以返回Windows等待響應。很顯然,如果在使用Win95/98和Me時遇到藍屏,就只能找開發人員來進行排障了[2]。

Windows2000和Windows7 時過境遷,Windows發展到了Windows 2000,藍屏也"進化"了--藍屏界面的信息變得全面,且藍屏之後只能靠系統自動重啟或者由用戶強制重啟。

到了winxp時代,藍屏界面大同小異,但是信息更加全面,雖然有點嚇人,不過以此來進行排障工作就更加容易了。自此,藍屏界面保持不變並延續到Windows 7時代,直到2012年Windows 8推出後,藍屏界面才被改變。

Windows 2000到Windows 7的藍屏界面如右圖所示。我們以xp系統為例,解釋藍屏的主要信息(win2000信息與此大同小異)。藍屏主要信息分如下模塊:

第一段英文提示你的電腦出現問題已經停止運作。

第二段英文(The problem seems to be caused by the following file: ndis.sys)提示你的藍屏可能是由某個文件導致的,這裡就是ndis.sys。這一段不一定所有藍屏都有。

接下來是藍屏類型描述:DRIVER_IRQL_NOT_LESS_OR_EQUAL

接下來幾段英文都是一些建議。

之後的技術信息(Technical information)的內容就是關鍵了:STOP: 0x000000d1 (0x0000000000000028, 0x0000000000000002, 0x0000000000000001, 0xfffff88001d30cd3)

以上描述了藍屏的具體代碼。其中第一部分是停機碼,用於識別已發生錯誤的類型。括號內的四個數字集則是藍屏參數,它具體說明了藍屏的原因,有些參數說明的是藍屏的細分類,有些說明的是導致藍屏的文件,有些則說明該文件的位置。其中說明藍屏的細分類可以去微軟官方查詢,但是導致藍屏的文件及其位置則需要藉助工具(如BlueScreenView)來進行查看。 ndis.sys - Address 0xfffff88001d30cd3 base at 0xfffff88001cfe000 DateStamp 0x510cbf05

以上則具體描述了藍屏文件的位置。這一段不一定所有藍屏都有。

Windows8及以後 相比Windows 7及以前系統的藍屏,Windows 8及以後系統的藍屏看上去就"友好"得多了--至少,沒有那麼嚇人了。但是相比之下,可以診斷並解決藍屏的信息就少了許多。如圖所示,這裡的藍屏只告訴了你藍屏類型描述,因此要想很好地診斷它就必須得藉助事件查看器以至於使用bluescreenview了。

藍屏原因

一旦遇上藍屏,大多數的人都會以為Windows不行了,所以就癱瘓了,有罪魁禍首是Windows,或者Windows不夠強悍、不夠穩定的意思。要知道,每當有內核模式設備驅動程序或者子系統引發了一個非法異常,Windows就會面臨這個艱難的抉擇,雖然Windows最終還是選擇了崩潰,但是這並不代表它就不能夠忽略該異常,讓設備驅動程序或者子系統繼續往下執行。

Windows之所以要選擇"亡我",是因為它不知道該錯誤是否能被隔離出來從而不傷害系統的其它程序與數據,或者該組件將來是否能夠恢復正常,而且Windows深知,這個異常更有可能來源於更深層的問題,比如由於內存的常規破壞(General Corruption),或者由於硬件設備不能正常工作。允許系統繼續運行可能導致更多的異常,而且,存儲在磁盤或其他外設中的數據可能也會遭受破壞。Windows意識到,這樣做的風險太大了,為了您的程序、數據安全與完整,為了將您的損失在第一時間減小至最低,Windows於是忍痛做出了自我犧牲。

當系統檢測到引發崩潰的致命錯誤時,Windows自己執行崩潰函數"KeBugCheckEx"。該函數接受一個停止代碼(STOP Code,也稱為錯誤檢查碼"Bug Check Code"),以及四個根據停止代碼來解釋的參數(下文中會有圖例)。在調用KeBugCheckEx之後,首先該系統所有處理器上的所有中斷將被屏蔽,然後系統將顯示器切換到低分辨率的VGA圖形模式(因為這是所有Windows平台顯卡均支持的通用模式),繪製一個藍色背景,然後顯示此停止代碼,並且後面緊跟一些對用戶診斷錯誤有幫助的關鍵信息。

最後,KeBugCheckEx調用所有已註冊的設備驅動程序錯誤檢查回調函數(這種回調函數通過調用KeRegisterBugCheckCallback函數來註冊),從而讓這些驅動程序停止運行它們所支配的設備(有系統數據結構已經被破壞得太嚴重以至於藍屏都顯示不出來的可能性)。

調試端口

調試端口告訴用戶內存轉儲映像是否寫到磁盤上了,使用內存轉儲映像可以確定發生問題的性質, 還會告訴用戶調試信息是否被傳到另一台電腦上,以及使用了什麼端口完成這次通訊。不過, 這裡的信息對於普通用戶來說,沒有什麼意義。

處理方法

檢查 在開始-->;運行中輸入:EventVwr.msc ,回車出現"事件查看器",注意檢查其中的"系統日誌"和"應用程序日誌"中表明"錯誤"的項。

把藍屏中密密麻麻的英文記下來,接着到其他電腦中上網,進入微軟幫助與支持網站在左上角的"搜索(知識庫)"中輸入停機碼。如果,搜索結果沒有適合信息,可以選擇"英文知識庫"再搜索一遍。一般情況下,會在這裡找到有用的解決案例。另外,在百度、Google等搜索引擎中使用藍屏的停機碼或者後面的說明文字為關鍵詞搜索,往往也會有收穫。

一般情況下,藍屏都是在硬件驅動或新加硬件並安裝驅動後,出現衝突或不兼容的情況,這時Windows提供的"最後一次正確配置"就是解決藍屏的快捷方式。

重啟系統,在出現啟動菜單時,按下F8鍵,就會出現windows高級啟動選項菜單,鍵盤光標,選定:"最後一次正確配置",然後,回車鍵(Enter),回車鍵(Enter),按下去。

有些藍屏是Windows本身存在缺陷造成的,因此可通過安裝最新的系統補丁和Service Pack來解決。

如果系統可以運行的情況下,錯打了衝突的補丁,可以用,金山急救箱,來"擴展掃描",立即掃描,掃描完畢後,會提示:哪個補丁,不需要修復。然後,照提示點:立即處理。完畢後,如果提示需要"重啟電腦",立即重啟電腦,就可以了。

重啟

Windows 2K/XP藍屏信息非常多,無法在一篇文章中全面講解,但他們產生的原因往往集中在不兼容的硬件和驅動程序、有問題的軟件、病毒等,因此,首先為大家提供了一些常規的解決方案。在遇到藍屏錯誤時,應先對照這些方案進行排除,下列內容對正在使用Windows、Vista或Windows 7的用戶也有幫助。

有時只是某個程序或驅動程序一時犯錯,重啟後它們會改過自新。藍屏第二部分是推薦用戶進行的操作信息。有時, 推薦的操作僅僅是一般性的建議(比如:查找BIOS的更新等); 有時,也就是顯示一條與當前問題相關的提示。 一般來說, 惟一的建議就是重啟。

硬件

應該檢查新硬件是否插牢,這個被許多人忽視的問題往往會引發許多莫名其妙的故障。如果確

認沒有問題,將其拔下, 然後換個插槽試試,並安裝最新的驅動程序。同時,還應對照微軟網站的硬件兼容類別檢查一下硬件是否與操作系統兼容。如果,你的硬件沒有在表中,那麼就得到硬件廠商網站進行查詢,或者撥打他們的諮詢電話。

對於新裝的電腦經常出現藍屏問題,應該檢查並升級BIOS到最新版本。同時關閉其中的內存相關項,比如:緩存和映射。另外,還應該對照微軟的硬件兼容列表檢查自己的硬件。還有就是,如果主板BIOS無法支持大容量硬盤也會導致藍屏,需要對其進行升級。

軟件

電腦藍屏除了與硬件有關,或與驅動等衝突會造成,還和電腦中的軟件會發生衝突並造成藍屏,下面列舉出常見的電腦軟件衝突造成藍屏的原因和解決辦法。

1.啟動時加載程序過多

不要在啟動時加載過多的應用程序,以免使系統資源消耗殆盡。正常情況下,Win9X啟動後系統資源應不低於90%。最好維持在90%以上,若啟動後未運行任何程序就低於70%,就需要卸掉一部分應用程序,否則就可能出現"藍屏"。

2.應用程序存在着BUG

有些應用程序設計上存在着缺陷或錯誤,運行時有可能與Win9X發生衝突或爭奪資源,造成Win9X無法為其分配內存地址或遇到其保護性錯誤。這種BUG可能是無法預知的,免費軟件最為常見。另外,由於一些用戶還在使用盜版軟件,這些盜版軟件在解密過程中會破壞和丟失部分源代碼,使軟件十分不穩定,不可靠,也常常導致"藍屏"。

3.遭到不明的程序或病毒攻擊所至

這個現象只要是平時我們在上網的時候遇到的,特別是進到一些BBS站時,可能暴露了自己的IP,被"黑客"用一些軟件攻擊所至。對互這種情況最好就是在自己的計算機上安裝一些防禦軟件。再有就是登錄BBS要進行安全設置,隱藏自己IP。

4.版本衝突

有些應用程序需調用特定版本的動態鏈接庫DLL,如果在安裝軟件時,舊版本的DLL覆蓋了新版本的DLL,或者刪除應用程序時,誤刪了有用的DLL文件,就可能使上述調用失敗,從而出現"藍屏"。不妨重新安裝試一試。

驅動

如果剛安裝完某個硬件的新驅動,或安裝了某個軟件,而它又在系統服務中添加了相應項目(比如:殺毒軟件、新的播放器、CPU降溫軟件、防火牆軟件等),在重啟或使用中出現了藍屏故障,請到安全模式來卸載或禁用它們。

病毒

比如衝擊波和震盪波等病毒有時會導致Windows藍屏死機,因此查殺病毒必不可少。同時一些木馬間諜軟件也會引發藍屏,所以,最好再用相關工具進行掃描檢查。

恢復

運行"sfc /scannow"來檢查系統文件是否被替換,然後用系統安裝盤來恢復。

小提示:

BIOS的緩存和映射項

Video BIOS Shadowing (視頻BIOS映射)

Shadowing address ranges(映射地址列)

System BIOS Cacheable(系統BIOS緩衝)

VideoBIOSCacheable(視頻BIOS緩衝)

Video RAM Cacheable(視頻內存緩衝)

相關代碼

常見代碼表

(來源於微軟官方debug資料網站)

Bug Check 0x1: APC_INDEX_MISMATCH

Bug Check 0x2: DEVICE_QUEUE_NOT_BUSY

Bug Check 0x3: INVALID_AFFINITY_SET

Bug Check 0x4: INVALID_DATA_ACCESS_TRAP

Bug Check 0x5: INVALID_PROCESS_ATTACH_ATTEMPT

Bug Check 0x6: INVALID_PROCESS_DETACH_ATTEMPT

Bug Check 0x7: INVALID_SOFTWARE_INTERRUPT

Bug Check 0x8: IRQL_NOT_DISPATCH_LEVEL

Bug Check 0x9: IRQL_NOT_GREATER_OR_EQUAL

Bug Check 0xA: IRQL_NOT_LESS_OR_EQUAL

Bug Check 0xB: NO_EXCEPTION_HANDLING_SUPPORT

Bug Check 0xC: MAXIMUM_WAIT_OBJECTS_EXCEEDED

Bug Check 0xD: MUTEX_LEVEL_NUMBER_VIOLATION

Bug Check 0xE: NO_USER_MODE_CONTEXT

Bug Check 0xF: SPIN_LOCK_ALREADY_OWNED

Bug Check 0x10: SPIN_LOCK_NOT_OWNED

Bug Check 0x11: THREAD_NOT_MUTEX_OWNER

Bug Check 0x12: TRAP_CAUSE_UNKNOWN

Bug Check 0x13: EMPTY_THREAD_REAPER_LIST

Bug Check 0x14: CREATE_DELETE_LOCK_NOT_LOCKED

Bug Check 0x15: LAST_CHANCE_CALLED_FROM_KMODE

Bug Check 0x16: CID_HANDLE_CREATION

Bug Check 0x17: CID_HANDLE_DELETION

Bug Check 0x18: REFERENCE_BY_POINTER

Bug Check 0x19: BAD_POOL_HEADER

Bug Check 0x1A: MEMORY_MANAGEMENT

Bug Check 0x1B: PFN_SHARE_COUNT

Bug Check 0x1C: PFN_REFERENCE_COUNT

Bug Check 0x1D: NO_SPIN_LOCK_AVAILABLE

Bug Check 0x1E: KMODE_EXCEPTION_NOT_HANDLED

Bug Check 0x1F: SHARED_RESOURCE_CONV_ERROR

Bug Check 0x20: KERNEL_APC_PENDING_DURING_EXIT

Bug Check 0x21: QUOTA_UNDERFLOW

Bug Check 0x22: FILE_SYSTEM

Bug Check 0x23: FAT_FILE_SYSTEM

Bug Check 0x24: NTFS_FILE_SYSTEM

Bug Check 0x25: NPFS_FILE_SYSTEM

Bug Check 0x26: CDFS_FILE_SYSTEM

Bug Check 0x27: RDR_FILE_SYSTEM

Bug Check 0x28: CORRUPT_ACCESS_TOKEN

Bug Check 0x29: SECURITY_SYSTEM

Bug Check 0x2A: INCONSISTENT_IRP

Bug Check 0x2B: PANIC_STACK_SWITCH

Bug Check 0x2C: PORT_DRIVER_INTERNAL

Bug Check 0x2D: SCSI_DISK_DRIVER_INTERNAL

Bug Check 0x2E: DATA_BUS_ERROR

Bug Check 0x2F: INSTRUCTION_BUS_ERROR

Bug Check 0x30: SET_OF_INVALID_CONTEXT

Bug Check 0x31: PHASE0_INITIALIZATION_FAILED

Bug Check 0x32: PHASE1_INITIALIZATION_FAILED

Bug Check 0x33: UNEXPECTED_INITIALIZATION_CALL

Bug Check 0x34: CACHE_MANAGER

Bug Check 0x35: NO_MORE_IRP_STACK_LOCATIONS

Bug Check 0x36: DEVICE_REFERENCE_COUNT_NOT_ZERO

Bug Check 0x37: FLOPPY_INTERNAL_ERROR

Bug Check 0x38: SERIAL_DRIVER_INTERNAL

Bug Check 0x39: SYSTEM_EXIT_OWNED_MUTEX

Bug Check 0x3A: SYSTEM_UNWIND_PREVIOUS_USER

Bug Check 0x3B: SYSTEM_SERVICE_EXCEPTION

Bug Check 0x3C: INTERRUPT_UNWIND_ATTEMPTED

Bug Check 0x3D: INTERRUPT_EXCEPTION_NOT_HANDLED

Bug Check 0x3E: MULTIPROCESSOR_CONFIGURATION_NOT_SUPPORTED

Bug Check 0x3F: NO_MORE_SYSTEM_PTES

Bug Check 0x40: TARGET_MDL_TOO_SMALL

Bug Check 0x41: MUST_SUCCEED_POOL_EMPTY

Bug Check 0x42: ATDISK_DRIVER_INTERNAL

Bug Check 0x43: NO_SUCH_PARTITION

Bug Check 0x44: MULTIPLE_IRP_COMPLETE_REQUESTS

Bug Check 0x45: INSUFFICIENT_SYSTEM_MAP_REGS

Bug Check 0x46: DEREF_UNKNOWN_LOGON_SESSION

Bug Check 0x47: REF_UNKNOWN_LOGON_SESSION

Bug Check 0x48: CANCEL_STATE_IN_COMPLETED_IRP

Bug Check 0x49: PAGE_FAULT_WITH_INTERRUPTS_OFF

Bug Check 0x4A: IRQL_GT_ZERO_AT_SYSTEM_SERVICE

Bug Check 0x4B: STREAMS_INTERNAL_ERROR

Bug Check 0x4C: FATAL_UNHANDLED_HARD_ERROR

Bug Check 0x4D: NO_PAGES_AVAILABLE

Bug Check 0x4E: PFN_LIST_CORRUPT

Bug Check 0x4F: NDIS_INTERNAL_ERROR

Bug Check 0x50: PAGE_FAULT_IN_NONPAGED_AREA

Bug Check 0x51: REGISTRY_ERROR

Bug Check 0x52: MAILSLOT_FILE_SYSTEM

Bug Check 0x53: NO_BOOT_DEVICE

Bug Check 0x54: LM_SERVER_INTERNAL_ERROR

Bug Check 0x55: DATA_COHERENCY_EXCEPTION

Bug Check 0x56: INSTRUCTION_COHERENCY_EXCEPTION

Bug Check 0x57: XNS_INTERNAL_ERROR

Bug Check 0x58: FTDISK_INTERNAL_ERROR

Bug Check 0x59: PINBALL_FILE_SYSTEM

Bug Check 0x5A: CRITICAL_SERVICE_FAILED

Bug Check 0x5B: SET_ENV_VAR_FAILED

Bug Check 0x5C: HAL_INITIALIZATION_FAILED

Bug Check 0x5D: UNSUPPORTED_PROCESSOR

Bug Check 0x5E: OBJECT_INITIALIZATION_FAILED

Bug Check 0x5F: SECURITY_INITIALIZATION_FAILED

Bug Check 0x60: PROCESS_INITIALIZATION_FAILED

Bug Check 0x61: HAL1_INITIALIZATION_FAILED

Bug Check 0x62: OBJECT1_INITIALIZATION_FAILED

Bug Check 0x63: SECURITY1_INITIALIZATION_FAILED

Bug Check 0x64: SYMBOLIC_INITIALIZATION_FAILED

Bug Check 0x65: MEMORY1_INITIALIZATION_FAILED

Bug Check 0x66: CACHE_INITIALIZATION_FAILED

Bug Check 0x67: CONFIG_INITIALIZATION_FAILED

Bug Check 0x68: FILE_INITIALIZATION_FAILED

Bug Check 0x69: IO1_INITIALIZATION_FAILED

Bug Check 0x6A: LPC_INITIALIZATION_FAILED

Bug Check 0x6B: PROCESS1_INITIALIZATION_FAILED

Bug Check 0x6C: REFMON_INITIALIZATION_FAILED

Bug Check 0x6D: SESSION1_INITIALIZATION_FAILED

Bug Check 0x6E: SESSION2_INITIALIZATION_FAILED

Bug Check 0x6F: SESSION3_INITIALIZATION_FAILED

Bug Check 0x70: SESSION4_INITIALIZATION_FAILED

Bug Check 0x71: SESSION5_INITIALIZATION_FAILED

Bug Check 0x72: ASSIGN_DRIVE_LETTERS_FAILED

Bug Check 0x73: CONFIG_LIST_FAILED

Bug Check 0x74: BAD_SYSTEM_CONFIG_INFO

Bug Check 0x75: CANNOT_WRITE_CONFIGURATION

Bug Check 0x76: PROCESS_HAS_LOCKED_PAGES

Bug Check 0x77: KERNEL_STACK_INPAGE_ERROR

Bug Check 0x78: PHASE0_EXCEPTION

Bug Check 0x79: MISMATCHED_HAL

Bug Check 0x7A: KERNEL_DATA_INPAGE_ERROR

Bug Check 0x7B: INACCESSIBLE_BOOT_DEVICE

Bug Check 0x7C: BUGCODE_NDIS_DRIVER

Bug Check 0x7D: INSTALL_MORE_MEMORY

Bug Check 0x7E: SYSTEM_THREAD_EXCEPTION_NOT_HANDLED

Bug Check 0x7F: UNEXPECTED_KERNEL_MODE_TRAP

Bug Check 0x80: NMI_HARDWARE_FAILURE

Bug Check 0x81: SPIN_LOCK_INIT_FAILURE

Bug Check 0x82: DFS_FILE_SYSTEM

Bug Check 0x85: SETUP_FAILURE

Bug Check 0x8B: MBR_CHECKSUM_MISMATCH

Bug Check 0x8E: KERNEL_MODE_EXCEPTION_NOT_HANDLED

Bug Check 0x8F: PP0_INITIALIZATION_FAILED

Bug Check 0x90: PP1_INITIALIZATION_FAILED

Bug Check 0x92: UP_DRIVER_ON_MP_SYSTEM

Bug Check 0x93: INVALID_KERNEL_HANDLE

Bug Check 0x94: KERNEL_STACK_LOCKED_AT_EXIT

Bug Check 0x96: INVALID_WORK_QUEUE_ITEM

Bug Check 0x97: BOUND_IMAGE_UNSUPPORTED

Bug Check 0x98: END_OF_NT_EVALUATION_PERIOD

Bug Check 0x99: INVALID_REGION_OR_SEGMENT

Bug Check 0x9A: SYSTEM_LICENSE_VIOLATION

Bug Check 0x9B: UDFS_FILE_SYSTEM

Bug Check 0x9C: MACHINE_CHECK_EXCEPTION

Bug Check 0x9E: USER_MODE_HEALTH_MONITOR

Bug Check 0x9F: DRIVER_POWER_STATE_FAILURE

Bug Check 0xA0: INTERNAL_POWER_ERROR

Bug Check 0xA1: PCI_BUS_DRIVER_INTERNAL

Bug Check 0xA2: MEMORY_IMAGE_CORRUPT

Bug Check 0xA3: ACPI_DRIVER_INTERNAL

Bug Check 0xA4: CNSS_FILE_SYSTEM_FILTER

Bug Check 0xA5: ACPI_BIOS_ERROR

Bug Check 0xA7: BAD_EXHANDLE

Bug Check 0xAB: SESSION_HAS_VALID_POOL_ON_EXIT

Bug Check 0xAC: HAL_MEMORY_ALLOCATION

Bug Check 0xAD: VIDEO_DRIVER_DEBUG_REPORT_REQUEST

Bug Check 0xB4: VIDEO_DRIVER_INIT_FAILURE

Bug Check 0xB8: ATTEMPTED_SWITCH_FROM_DPC

Bug Check 0xB9: CHIPSET_DETECTED_ERROR

Bug Check 0xBA: SESSION_HAS_VALID_VIEWS_ON_EXIT

Bug Check 0xBB: NETWORK_BOOT_INITIALIZATION_FAILED

Bug Check 0xBC: NETWORK_BOOT_DUPLICATE_ADDRESS

Bug Check 0xBE: ATTEMPTED_WRITE_TO_READONLY_MEMORY

Bug Check 0xBF: MUTEX_ALREADY_OWNED

Bug Check 0xC1: SPECIAL_POOL_DETECTED_MEMORY_CORRUPTION

Bug Check 0xC2: BAD_POOL_CALLER

Bug Check 0xC4: DRIVER_VERIFIER_DETECTED_VIOLATION

Bug Check 0xC5: DRIVER_CORRUPTED_EXPOOL

Bug Check 0xC6: DRIVER_CAUGHT_MODIFYING_FREED_POOL

Bug Check 0xC7: TIMER_OR_DPC_INVALID

Bug Check 0xC8: IRQL_UNEXPECTED_VALUE

Bug Check 0xC9: DRIVER_VERIFIER_IOMANAGER_VIOLATION

Bug Check 0xCA: PNP_DETECTED_FATAL_ERROR

Bug Check 0xCB: DRIVER_LEFT_LOCKED_PAGES_IN_PROCESS

Bug Check 0xCC: PAGE_FAULT_IN_FREED_SPECIAL_POOL

Bug Check 0xCD: PAGE_FAULT_BEYOND_END_OF_ALLOCATION

Bug Check 0xCE: DRIVER_UNLOADED_WITHOUT_CANCELLING_PENDING_OPERATIONS

Bug Check 0xCF: TERMINAL_SERVER_DRIVER_MADE_INCORRECT_MEMORY_REFERENCE

Bug Check 0xD0: DRIVER_CORRUPTED_MMPOOL

Bug Check 0xD1: DRIVER_IRQL_NOT_LESS_OR_EQUAL

Bug Check 0xD2: BUGCODE_ID_DRIVER

Bug Check 0xD3: DRIVER_PORTION_MUST_BE_NONPAGED

Bug Check 0xD4: SYSTEM_SCAN_AT_RAISED_IRQL_CAUGHT_IMPROPER_DRIVER_UNLOAD

Bug Check 0xD5: DRIVER_PAGE_FAULT_IN_FREED_SPECIAL_POOL

Bug Check 0xD6: DRIVER_PAGE_FAULT_BEYOND_END_OF_ALLOCATION

Bug Check 0xD7: DRIVER_UNMAPPING_INVALID_VIEW

Bug Check 0xD8: DRIVER_USED_EXCESSIVE_PTES

Bug Check 0xD9: LOCKED_PAGES_TRACKER_CORRUPTION

Bug Check 0xDA: SYSTEM_PTE_MISUSE

Bug Check 0xDB: DRIVER_CORRUPTED_SYSPTES

Bug Check 0xDC: DRIVER_INVALID_STACK_ACCESS

Bug Check 0xDE: POOL_CORRUPTION_IN_FILE_AREA

Bug Check 0xDF: IMPERSONATING_WORKER_THREAD

Bug Check 0xE0: ACPI_BIOS_FATAL_ERROR

Bug Check 0xE1: WORKER_THREAD_RETURNED_AT_BAD_IRQL

Bug Check 0xE2: MANUALLY_INITIATED_CRASH

Bug Check 0xE3: RESOURCE_NOT_OWNED

Bug Check 0xE4: WORKER_INVALID

Bug Check 0xE6: DRIVER_VERIFIER_DMA_VIOLATION

Bug Check 0xE7: INVALID_FLOATING_POINT_STATE

Bug Check 0xE8: INVALID_CANCEL_OF_FILE_OPEN

Bug Check 0xE9: ACTIVE_EX_WORKER_THREAD_TERMINATION

Bug Check 0xEA: THREAD_STUCK_IN_DEVICE_DRIVER

Bug Check 0xEB: DIRTY_MAPPED_PAGES_CONGESTION

Bug Check 0xEC: SESSION_HAS_VALID_SPECIAL_POOL_ON_EXIT

Bug Check 0xED: UNMOUNTABLE_BOOT_VOLUME

Bug Check 0xEF: CRITICAL_PROCESS_DIED

Bug Check 0xF1: SCSI_VERIFIER_DETECTED_VIOLATION

Bug Check 0xF3: DISORDERLY_SHUTDOWN

Bug Check 0xF4: CRITICAL_OBJECT_TERMINATION

Bug Check 0xF5: FLTMGR_FILE_SYSTEM

Bug Check 0xF6: PCI_VERIFIER_DETECTED_VIOLATION

Bug Check 0xF7: DRIVER_OVERRAN_STACK_BUFFER

Bug Check 0xF8: RAMDISK_BOOT_INITIALIZATION_FAILED

Bug Check 0xF9: DRIVER_RETURNED_STATUS_REPARSE_FOR_VOLUME_OPEN

Bug Check 0xFA: HTTP_DRIVER_CORRUPTED

Bug Check 0xFC: ATTEMPTED_EXECUTE_OF_NOEXECUTE_MEMORY

Bug Check 0xFD: DIRTY_NOWRITE_PAGES_CONGESTION

Bug Check 0xFE: BUGCODE_USB_DRIVER

Bug Check 0xFF: RESERVE_QUEUE_OVERFLOW

Bug Check 0x100: LOADER_BLOCK_MISMATCH

Bug Check 0x101: CLOCK_WATCHDOG_TIMEOUT

Bug Check 0x103: MUP_FILE_SYSTEM

Bug Check 0x104: AGP_INVALID_ACCESS

Bug Check 0x105: AGP_GART_CORRUPTION

Bug Check 0x106: AGP_ILLEGALLY_REPROGRAMMED

Bug Check 0x108: THIRD_PARTY_FILE_SYSTEM_FAILURE

Bug Check 0x109: CRITICAL_STRUCTURE_CORRUPTION

Bug Check 0x10A: APP_TAGGING_INITIALIZATION_FAILED

Bug Check 0x10C: FSRTL_EXTRA_CREATE_PARAMETER_VIOLATION

Bug Check 0x10D: WDF_VIOLATION

Bug Check 0x10E: VIDEO_MEMORY_MANAGEMENT_INTERNAL

Bug Check 0x10F: RESOURCE_MANAGER_EXCEPTION_NOT_HANDLED

Bug Check 0x111: RECURSIVE_NMI

Bug Check 0x112: MSRPC_STATE_VIOLATION

Bug Check 0x113: VIDEO_DXGKRNL_FATAL_ERROR

Bug Check 0x114: VIDEO_SHADOW_DRIVER_FATAL_ERROR

Bug Check 0x115: AGP_INTERNAL

Bug Check 0x116: VIDEO_TDR_ERROR

Bug Check 0x117: VIDEO_TDR_TIMEOUT_DETECTED

Bug Check 0x119: VIDEO_SCHEDULER_INTERNAL_ERROR

Bug Check 0x11A: EM_INITIALIZATION_FAILURE

Bug Check 0x11B: DRIVER_RETURNED_HOLDING_CANCEL_LOCK

Bug Check 0x11C: ATTEMPTED_WRITE_TO_CM_PROTECTED_STORAGE

Bug Check 0x11D: EVENT_TRACING_FATAL_ERROR

Bug Check 0x121: DRIVER_VIOLATION

Bug Check 0x122: WHEA_INTERNAL_ERROR

Bug Check 0x124: WHEA_UNCORRECTABLE_ERROR

Bug Check 0x127: PAGE_NOT_ZERO

Bug Check 0x12B: FAULTY_HARDWARE_CORRUPTED_PAGE

Bug Check 0x12C: EXFAT_FILE_SYSTEM

Bug Check 0x133 DPC_WATCHDOG_VIOLATION

Bug Check 0x138 GPIO_CONTROLLER_DRIVER_ERROR

Bug Check 0x139 KERNEL_SECURITY_CHECK_FAILURE

Bug Check 0x144: BUGCODE_USB3_DRIVER

Bug Check 0x14B: SOC_SUBSYSTEM_FAILURE

Bug Check 0x15D: SOC_SUBSYSTEM_FAILURE_LIVEDUMP

Bug Check 0x15E: BUGCODE_NDIS_DRIVER_LIVE_DUMP

Bug Check 0x1000007E: SYSTEM_THREAD_EXCEPTION_NOT_HANDLED_M

Bug Check 0x1000007F: UNEXPECTED_KERNEL_MODE_TRAP_M

Bug Check 0x1000008E: KERNEL_MODE_EXCEPTION_NOT_HANDLED_M

Bug Check 0x100000EA: THREAD_STUCK_IN_DEVICE_DRIVER_M

Bug Check 0xC0000218: STATUS_CANNOT_LOAD_REGISTRY_FILE

Bug Check 0xC000021A: STATUS_SYSTEM_PROCESS_TERMINATED

Bug Check 0xC0000221: STATUS_IMAGE_CHECKSUM_MISMATCH

Bug Check 0xDEADDEAD: MANUALLY_INITIATED_CRASH1

部分代碼含義

1.0x0000000A:IRQL_NOT_LESS_OR_EQUAL

◆錯誤分析:主要是由問題的驅動程序、有缺陷或不兼容的硬件與軟件造成的。從技術角度講,表明在內核模式中有級別進程請求(IRQL)訪問其沒有權限訪問的內存地址。

◇解決方案:請用後面介紹的解決方案中的2、3、5、8、9方案嘗試排除。

2、0x00000012:TRAP_CAUSE_UNKNOWN

◆錯誤分析:如果遇到這個錯誤信息,那麼很不幸, 因為KeBugCheckEx分析的結果是錯誤原因未知。

◇解決方案:既然微軟都幫不上忙,就得靠自己了, 請仔細回想這個錯誤是什麼時候出現的; 第一次發生時你對系統做了哪些操作; 發生時正在進行什麼操作。從這些信息中找出可能的原因,從而選擇相應解決方案嘗試排除。

3、0x0000001A:MEMORY_MANAGEMENT

◆錯誤分析:這個內存管理錯誤往往是由硬件引起的, 比如: 新安裝的硬件、內存本身有問題等。

◇解決方案:如果是在安裝Windows時出現,有可能是由於你的電腦達不到安裝Windows的最小內存和磁盤要求。請加大內存或多劃分一些磁盤空間。

4、0x0000001E:KMODE_EXCEPTION_NOT_HANDLED

◆錯誤分析:Windows內核檢查到一個非法或者未知的進程指令,這個停機碼一般是由問題的內存或是與前面0x0000000A相似的原因造成的。

◇解決方案:

⑴硬件兼容有問題:請對照最新硬件兼容性列表, 查看所有硬件是否包含在該列表中。或者使用相應的Windows升級助手來檢查硬件的要求。

⑵有問題的設備驅動、系統服務或內存衝突和中斷衝突: 如果在藍屏信息中出現了驅動程序的名字,請試着在安裝模式或者故障恢復控制台中禁用或刪除驅動程序, 並禁用所有剛安裝的驅動和軟件。如果錯誤出現在系統啟動過程中,請進入安全模式, 將藍屏信息中所標明的文件重命名或者刪除。

⑶如果錯誤信息中明確指出Win32K.sys: 很有可能是第三方遠程控制軟件造成的,需要從故障恢復控制台中將對該軟件的服務關閉。

⑷在安裝Windows後第一次重啟時出現:最大嫌疑可能時系統分區的磁盤空間不足或BIOS兼容有問題。

⑸如果是在關閉某個軟件時出現的:很有可能時軟件本身存在設計缺陷, 請升級或卸載它。

傳遞信息

1、運行在內核模式下的設備驅動程序或者操作系統函數引發了一個未被處理的異常,比如內存訪問違例(由於企圖寫一個只讀頁面或者企圖讀一個當前未被映射的內存地址(即無效地址)而引起)。

2、調用一個內核支持例程導致了重新調度,比如當中斷請求級別(IRQL)為DPC/Dispatch級別或更高級別時等待一個標記為需要等待的調度對象。

3、在DPC/Dispatch級別或更高的IRQL級別時由於數據存在於頁面文件或內存映射文件中而發生了頁面錯誤(Page Fault)。(這將要求內存管理器必須等待一個I/O操作發生。但正如上面一項所說,在DPC/Dispatch級別或更高IRQL級別上不能夠進行等待,因為那將要求一次重新調度)。

4、當檢測到一個內部狀態表明數據已遭受破壞或者在保證數據不被破壞的情況下系統無法繼續執行時,設備驅動程序或操作系統函數明確地要求系統崩潰(通過調用系統函數KeBugCheckEx)。

5、發生硬件錯誤,比如處理器的計算機檢查異常功能(Machine Check)報告有異常或者發生不可屏蔽中斷(NMI)。

維護技巧

1。定期對重要的註冊表文件進行手工備份,避免系統出錯後,未能及時替換成備份文件而產生不可挽回的錯誤。

2。儘量避免非正常關機,減少重要文件的丟失。如VxD、DLL文件等,硬盤出現損傷或系統引導文件丟失。

3。對普通用戶而言,只要能正常運行,沒有必要去升級顯卡、主板的BIOS和驅動程序,避免升級造成的危害。

4。定期檢查優化系統文件,運行"系統文件檢查器"進行文件丟失檢查及版本校對。檢查步驟參見前面相關介紹。

5。減少無用軟件的安裝,儘量不用手工卸載或刪除程序,以減少非法替換文件和文件指向錯誤的出現。

6。如果不是內存特別大和其管理程序非常優秀,儘量避免大程序的同時運行,如果你發現在聽MP3時有沙沙拉拉的聲音,基本可以判定該故障是由內存不足而造成的。

7。定期用殺毒軟件進行全盤掃描,清除病毒。

8。不上一些不熟悉的網站,對於一些網站上的帶有誘惑性的圖片和一些中獎的消息,不要點擊。

9。定期升級操作系統,軟件和驅動。

10。警惕溫柔殺手導致"電腦藍屏"

"溫柔殺手"病毒首先在系統中釋放病毒執行程序C:\WINDOWS\system32\kb.dll,然後再感染若干個系統關鍵文件,比如"explorer.exe","winlogon.exe"。並且,因為溫柔殺手病毒還會下載更多盜號木馬,導致系統被大量病毒木馬破壞,使得針對"溫柔殺手"病毒的修復變得較為複雜。若被某些殺毒軟件不當處置,則會出現電腦開機藍屏。

編寫過程

Windows操作系統的藍屏死機提示已經成為標誌性的畫面,說明軟件出現了問題。但很少有人知道,這個屏幕上的文字竟然出自前微軟CEO史蒂夫·鮑爾默(Steve Ballmer)之手。

根據微軟資深程序員雷蒙德·陳(Raymond Chen)的介紹,當時鮑爾默負責微軟系統部門,他不喜歡最初工程師撰寫的警告提示文字,並接受了手下開發人員的挑戰:親自撰寫更好的文字。

幾天之後,鮑爾默完成了這項任務,他所撰寫的文字也幾乎一字不差地出現在最終出貨的產品系統里。當然,隨着系統的更新,這些文字也幾經改變,而且技術進步使得如今的Windows設備出現藍屏死機的頻率越來越低,不過鮑爾默親自撰寫軟件崩潰警告提示仍然令人驚異。[1]

參考文獻