蓝屏死机

维基百科,自由的百科全书
(重定向自蓝屏
跳转到导航 跳转到搜索
Blue Screen of Death”的各地常用名称
中国大陆蓝屏死机、蓝屏
港澳蓝画面死机、蓝屏死机
台湾蓝萤幕当机、蓝白当机
File:Windows 11 26H1 BSOD CHT.png
Windows 11(26H1)中的蓝屏死机画面,它包含了一个用于快速排查错误的错误代码。

蓝屏死机(英语:Blue Screen of Death,缩写:BSoD)是指微软Windows操作系统在遭遇不可恢复的致命系统错误时,所呈现的崩溃提示界面。由于早期NT版本皆以*** STOP:开头,因此又称作STOP错误。自Windows 11 24H2起,该界面的背景颜色已调整为黑色。

在基于MS-DOSWindows 9x系统中,当发生错误时会显示两次蓝屏死机画面,相比之下,Windows NT系列的稳定性较高,因此仅在发生致命错误而必须重启时,才会显示蓝屏死机画面。画面上会显示特定的调试代码(例如:STOP: 0x0000004e)及简短的错误消息。用户可透过微软的技术支持网站页面存档备份,存于互联网档案馆)搜索该代码以分析故障成因。然而,有时调试代码未必能直接反映根本问题,甚至可能误导用户,因此在实务上往往需要搭配试误法(Trial and Error)才能找出确切原因。

在基于MS-DOS的Windows时代,蓝屏死机允许用户选择继续使用电脑或重启。但由于VxD通常仅在发生无法恢复的错误时才触发蓝屏死机,当此画面出现时,系统已处于不稳定或死机状态。当时最常见的故障原因为DLL地狱,指多个版本的DLL产生不兼容问题。当新安装的软件替换了系统中的DLL,可能导致原本依赖旧版DLL的应用程序崩溃。随着安装软件数量的增加,这种不兼容的风险也随之提升。整体而言,Windows NT系列的稳定性显著优于Windows 9x,发生蓝屏死机的几率也相对较低。

历史[编辑]

非严重错误时期[编辑]

Windows 1.0的蓝屏错误并非真正的蓝屏死机。在Windows 1.0的Beta版本中,若系统侦测错误时,会详细说明哪些检查未通过(例如:检测到版本过高的DOS系统时,会在启动前显示蓝底白字的“Incorrect DOS version”),然后才会正常启动。[1]不过,在正式发布之前,由于详细信息显示的功能被移除了,才会显示乱码。当真正的致命错误发生时,系统通常会直接锁死,或退出至DOS环境。Windows 2.0Windows 2.1也存在相同的状况。

Windows 3.0则设计了专用的对话框来显示重要系统消息,这些消息通常来自386增强模式下的驱动程序或其他无法正常运作的程序。[2][3]

在Windows 3.1中,此对话框的背景颜色由黑色改为蓝色。当按下Ctrl+Alt+Del(参见:Ctrl+Alt+Del)时会开启简易任务管理器

  • 由程序无回应时,用户可按下↵ Enter键来关闭该程序
  • 当所有程序正常运作时,会出现警告消息,提示没有程序无回应
  • 在任何情况下按下Ctrl+Alt+Del可强制重启

若系统错误过于严重,Windows 3.x与先前版本相同,会退出至DOS。[2]

严重错误时期[编辑]

第一个表示严重系统错误的蓝屏死机出现于Windows NT 3.1(NT系列的第一个版本,发布于1993年),以*** STOP:开头,并延续至后续部分的Windows版本。[4]此后发布的所有Windows操作系统都采用了这种模式,只是在后续版本中有所不同。

尽管大众普遍认为Windows Embedded Compact(早期称作Windows CE)系列的嵌入式系统存在蓝屏死机,但实际上并没有已知的真正意义上的蓝屏死机。[5]

蓝屏死机通常由编写不良的驱动程序或故障的硬件引起(例如:存储器故障、供电问题、过热或硬件运作超出规格限制)。在基于MS-DOS系统的Windows时代,系统核心中不完整的动态链接库(DLL)或漏洞也是导致死机的主因。相较于后续的Windows版本,Windows 9x发生蓝屏死机的情况极为频繁。[6]

重新设计[编辑]

Windows 11发布时,蓝屏死机曾一度改为黑色,但后来又改回原样式。

2025年6月26日,微软宣布Windows 11 2024更新将把蓝屏死机的画面改为黑色,同时对屏幕设计进行修正。[7][8]

格式[编辑]

File:Windows 98 BSOD color changed.png
在Windows 9x时代,可通过修改SYSTEM.ini来改变蓝屏的颜色

蓝屏死机最初背景为深蓝色(Windows NT 3.1—4:#0000A8;Windows 2000—7:#000080),文字为银色(#FFFFFF),包含当前存储器及暂存信息。从Windows Server 2012开始,使用蔚蓝色背景(Windows 8—10 11月更新:#1A67B3;周年更新—2022年更新:#0078D7)。早期版本的Windows 11使用黑色作为背景(#000000)[9],于22000.384改为深蓝色(#003D92)[10],于26120.3653改回黑色(#000000)[11]。Windows 10以后及服务器的预览版,方便开发人员快速分辨版本,改为深绿色(#246F24),而非蓝色或黑色[12][13],Windows Insider内测主管多纳·萨尔卡尔称:“为了更好地区分Windows Insider内测用户与正式版用户的报告,我们将错误检查页面的背景(从蓝色)换成了绿色。”[14]Windows 3.1—98可透过system.ini来修改屏幕颜色[15],而Windows NT则为硬件编码[15]

Windows 95—ME的画面以80x25的文字模式和720x400的分辨率显示。Windows NT系列最初使用80x50文字模式及720x400的分辨率,但从Windows 2000开始,分辨率调整至640x480。从Windows 8 (Server 2012) 开始,使用Segoe UI,并使用引导帧缓冲(the boot framebuffer)来显示内容,在UEFI的机器上使用最高的可用图形输出协议模式(Graphics Output Protocol mode),在传统BIOS的机器上使用1024×768(假设显示器是扁平横向放置的)或最高的VESA基本输入输出系统扩展模式(如果引导配置数据库中设置了最高模式,'highestmode')。Windows 10版本 1607以后的蓝屏死机界面与Windows 8相同,但多了一个通向微软公司官网的二维码,网页主要是微软公司对蓝屏死机原因的群众调查。

Windows NT[编辑]

在Windows NT的系列操作系统中,当内核或者运行在内核模式中的驱动程序发生无法修复的错误时,就会发生蓝屏死机,在Windows的软件开发工具包(SDK)与驱动开发工具包(DDK)文档中被称为“错误检查”(bug check)。它通常是被一般保护错误引起的。此时,操作系统能采取的唯一安全手段只有重新启动电脑;而作为结果,用户甚至没有机会来保存未保存的数据。

蓝屏画面中显示的文本包括了错误码和它的名称(如“0x0000001E, KMODE_EXCEPTION_NOT_HANDLED”),并在随后用括号括住四个与错误相关的值以方便维修。根据错误的不同,它可能还会显示问题发生的内存地址,以及在该地址下加载的驱动程序。此外,在屏幕的第二和第三部分可能还会分别显示所有已经加载的驱动程序和堆栈转储信息,而所给的驱动程序信息分为三列,每一列分别是驱动程序的基地址、驱动程序的创建日期和驱动程序的名称。[16]

默认情况下,Windows会在错误发生时创建一个内存转储文件,根据Windows版本的不同它可以小至64kB(小型转储),也可以大至RAM的完整复制(完全转储)。这个文件稍后可以使用调试器(一般是WinDbg[17])进行调试。调试器是进行堆栈追踪所必需的;并且由于蓝屏中的信息很有限,可能会造成误导或隐藏真正的原因,因此确定蓝屏的真正原因也需要它的参与。

在默认情况下,Windows XP被配置为只保存64kB的迷你转储文件,然后自动重启电脑。由于这一过程发生的非常迅速,蓝屏可能只会一闪而过甚至完全看不到,因此用户也很容易把它当作电脑随机重启的故障,直到重启完成后Windows提示刚刚曾发生过严重的错误。当然,可以通过关闭控制面板中“系统属性—高级—启动和故障恢复—系统失败”中的自动重启来达到显示蓝屏的目的。

Windows还可以被设置为将调试信息实时发送到在另一台计算机上运行的内核调试器。如果此时发生了停止错误,Windows将会暂停执行并且中断调试器,而不是显示蓝屏;之后,就可以用调试器检查内存的内容并寻找问题的原因了。

蓝屏死机也可能由严重的引导加载程序错误引起。在该错误中,Windows由于存储驱动程序错误、文件系统损坏或其他类似的问题而无法访问引导分区。它的错误码是STOP 0x0000007B (INACCESSIBLE_BOOT_DEVICE)。[18]在这种情况下,Windows将不会保存任何内存转储文件。由于此时Windows无法从硬盘启动,因此要想修复这种错误就需要使用在Windows安装盘中所附带的工具。

细节[编辑]

早期版本 (NT—7)[编辑]

Windows 8(Server 2012)之前,蓝屏死机界面会显示一个大写的错误名称(例如:APC_INDEX_MISMATCH)、一个十六进制的错误码(例如:0x00000001)和四个参数。这些信息格式显示如下:[19]

折叠项目
錯誤代碼 (參數1, 參數2, 參數3, 參數4)
錯誤名稱

根据错误码及其性质,参数可能会指出错误的原因和/或位置。此外,蓝屏界面上还会显示四段一般性的解释与建议,有时也会指出其他的技术信息,例如出错文件的名称和存储器地址。

以下是Windows 2000的格式,尽管它们之间略有不同:

折叠项目
File:Windows 2000 BOSD 2.png

在极少数情况下,蓝屏死机错误消息会被截断,有时不会显示错误名称、代码或四段错误提示。它通常会根据发生的错误类型显示不同格式的错误屏幕。例如:

1. 与Winlogon程序终止相关的蓝屏死机(例如:“0xC000021A (WINLOGON_FATAL_ERROR)”):[20]

折叠项目
STOP: c000021a {Fatal System Error}
The Windows Logon Process/SubSystem system process terminated unexpectedly
with a status of 參數1 (參數2 參數3).
The system has been shut down.

2. 与操作系统关键注册表案损坏相关的蓝屏死机(例如:“0xC0000218 (STATUS_CANNOT_LOAD_REGISTRY_FILE)”):

折叠项目
STOP: c0000218 {Registry File Failure}
The registry cannot load the hive
(file):\SystemRoot\System\Config\SOFTWARE
or its log or alternate.
It is corrupt, absent, or not writable.

3.可能导致Windows无法正常启动的硬件错误(例如0x00000080 (NMI_HARDWARE_FAILURE)):

折叠项目
*** Hardware Malfunction
Call your hardware vendor for support.
NMI: Parity Check / Memory Parity Error
*** The system has halted ***

随着Windows XP的发布,蓝屏死机的布局略有改动,这种布局一直沿用到Windows 7。具体来说,十六进制错误代码和四个参数被移到了屏幕底部,位于“Technical information:(技术信息)”标签下的四个段落之后。此外,关于如何参考“入门指南”手册来解决蓝屏死机的提示信息也被移除,所有提及Windows 2000的地方都简化为“Windows”。错误画面的开头还出现了那条如今臭名昭著的提示消息:

折叠项目
A problem has been detected and Windows has been shut down to prevent damage
to your computer.

以下是Windows XP到Windows 7系统中的蓝屏死机,尽管它们之间略有不同:

折叠项目
File:Windows XP BSOD.png

从Windows 2000开始,系统会自动执行记载体倾印,默认通常会以64KB的“小记载体倾印”文件形式产生。发生这种情况时,Windows 2000的蓝屏死机将显示下列消息来取代四段说明和建议。即使停用了记载体倾印,在“系统属性”的“启动和修复”下的“系统失败”部分选取“将事件写入系统日志中”或“发送系统管理警示”时,也能看到这些说明和建议:

折叠项目
File:Windows 2000 BOSD.png

在Windows XP到Windows 7系统中,上述消息保持不变,但略有修改,并且显示在四段说明和建议之后;而在Windows 2000系统中执行记载体倾印时,这四段的说明和建议是隐藏的。此外,在大多数情况下,当对Windows XP到Windows 7的蓝屏死机执行记载体倾印时,会显示下列消息以及显示记载体倾印进度的指示器:

折叠项目(记载体倾印进行中)
Collecting data for crash dump ...
Initializing disk for crash dump ...
Beginning dump of physical memory.
Dumping physical memory to disk:  0
折叠项目(记载体倾印已完成)
Beginning dump of physical memory
Physical memory dump complete.
Contact your system administrator or technical support group for further
assistance.

此外,在64位的Windows上,蓝屏死机的四个参数将扩展到16位数(0x0000000000000000),而不是8位数(0x00000000)。

后续版本(8—11、Server 2012—2025)[编辑]

而随着Windows Server 2012的发布,蓝屏死机的界面大幅改动并删去了以上的所有信息,只留下了错误名称和一段简短的描述。Windows 8加入了一个哭脸的颜文字。不过,十六进制的错误码和参数仍然能在事件查看器和内存转储文件中被查询到。 屏幕上默认显示的主要文字内容如下:

折叠项目
File:Windows 8 BSOD CHT.png

Windows 10 年度更新时,加入了QR-Code

折叠项目
File:Windows 10 1607 BSOD CHT.png

Windows 10 版本2004将“电脑”改为“设备”:

折叠项目
File:Windows 10 2004 BSOD CHT.png

Windows 10 的预览版本(build 14997之后)为绿色:

折叠项目
File:Windows 10 GSOD CHT.png

Windows 11 的早期版本(build 22000.384之前)为黑色:

折叠项目
File:Windows 11 21H2 BSOD CHT.png

Windows 11 build 22000.384之后改为深蓝色:

折叠项目
您的裝置發生問題,因此必須重新啟動。
我們剛剛正在收
集某些錯誤資訊,接著我們會為您重新啟動。

已完成 0%

     如需此問題與可能修正的詳細資訊,請瀏覽 http://windows.com/stopcode

     致電支援人員時,請提供此資訊: 
     停止代碼: <代碼>

Windows 11 24H2 重新设计布局,改为黑色,26H1引进翻译版本:

折叠项目
File:Windows 11 26H1 BSOD CHT.png

同上,预览版:

折叠项目
File:Windows 11 26H1 GSOD CHT.png

发生的死机[编辑]

相关条目[编辑]

参考文献[编辑]

  1. Why does Windows 1.01 crash at the splash screen?. Retro Computing. 2021-08-30 [2026-03-01]. (原始内容存档于2024-05-23) (English). In the final release of Windows, these detailed messages were hastily removed. The code that would print them; however, was not, and this is what produces the garbage output. 
  2. 2.0 2.1 Blue screen of death. BetaWiki. [2020-08-31]. (原始内容存档于2021-01-24) (English). 
  3. Steve Ballmer did not write the text for the blue screen of death. The Old New Thing. 2014-09-09 [2020-08-31]. (原始内容存档于2020-10-25) (en-US). 
  4. The Old New Thing | Who implemented the Windows NT blue screen of death?. The Old New Thing. 2017-09-26 [2026-03-01]. (原始内容存档于2019-03-15) (en-US). 
  5. Blue screen - Microsoft Windows Embedded Compact VErsion 7.00 (Build 2864).. social.msdn.microsoft.com. [2026-03-01]. (原始内容存档于2023-01-18) (en-US). 
  6. Garmon, Jay. Geek Trivia: Death by operating system. TechRepublic. 2007-04-16 [2021-06-01]. (原始内容存档于2022-03-10) (English). 
  7. 引用错误:<ref>标签无效;未给name(名称)为:0的ref(参考)提供文本
  8. MSN. www.msn.com. [2026-03-01]. Windows' infamous 'blue screen of death' will soon turn black 
  9. Warren, Tom. Microsoft’s Blue Screen of Death is changing to black in Windows 11. The Verge. 2021-07-01 [2026-03-01]. (原始内容存档于2021-07-02) (en-US). 
  10. published, Aaron Klotz. Windows 11 Update Makes BSOD Blue Again and Fixes Major File Explorer Bugs. Tom's Hardware. 2021-11-23 [2026-03-01] (English). 
  11. Blog, Windows Insider; LeBlanc, Amanda Langowski, Brandon. Announcing Windows 11 Insider Preview Build 26120.3653 (Beta Channel). Windows Insider Blog. 2025-03-28 [2026-03-01] (en-US). 
  12. Behold the Windows 10 GSOD - Green Screen of Death - BetaNews. 2016-12-29 [2026-03-01] (en-US). 
  13. Warren, Tom. Windows 10 testers will now get a Green Screen of Death. The Verge. 2016-12-29 [2026-03-01]. (原始内容存档于2017-01-01) (en-US). 
  14. Windows 10正式加入死机“绿屏”. 快科技. [2020-08-17]. (原始内容存档于2017-12-04). 
  15. 15.0 15.1 Seely, Scott. Windows Shell Programming. Upper Saddle River, NJ: Prentice Hall PTR. 2000: 232–233. ISBN 9780130254962. OCLC 44090524. BSOD stands for Blue Screen Of Death. One can customize the colors of this screen by setting a couple of variables in the 386Enh section of SYSTEM.INI: MessageTextColor and MessageBackColor. The user can only customize the BSOD under Windows 3.1, 95, and 98. These changes do not work under the Windows NT variants. 
  16. Microsoft Windows NT Workstation Resource Kit需要免费注册 1st. Redmond, WA: Microsoft Press. 29 October 1996. ISBN 1-57231-343-9. 
  17. DOMARS. Getting Started with WinDbg (Kernel-Mode). msdn.microsoft.com. [15 June 2018]. (原始内容存档于2016-03-14). 
  18. Stop error code 0x0000007B (INACCESSIBLE_BOOT_DEVICE). support.microsoft.com. 2018-04-17 [2020-01-16]. (原始内容存档于2021-03-28). 
  19. Archiveddocs. STOP: 0x00000001 (parameter, parameter, parameter, parameter) APC_INDEX_MIS. learn.microsoft.com. [2026-03-01] (en-us). 
  20. kaushika-msft. Troubleshoot a STOP 0xC000021A error in Windows XP or Windows Server 2003 - Windows Server. learn.microsoft.com. [2026-03-01] (en-us). 

外部链接[编辑]