跳转到内容

蓝屏死机:修订间差异

维基百科,自由的百科全书
删除的内容 添加的内容
Thyj留言 | 贡献
无编辑摘要
 
(未显示9个用户的15个中间版本)
第1行: 第1行:
{{NoteTA
{{NoteTA
|G1 = IT
|G1 = IT
|T = zh-cn:蓝屏死机; zh-tw:藍白當機畫面; zh-hk:藍屏死機;
|1 = zh-cn:蓝屏死机; zh-tw:藍白當機畫面; zh-hk:藍屏死機;
|2 = zh-cn:蓝屏; zh-tw:藍白畫面; zh-hk:藍屏;
|3 = 蓝屏死机画面=>zh-tw:藍白當機畫面
|4 = zh-cn:红屏死机; zh-tw:紅白當機; zh-hk:紅屏死機;
|5 = zh-cn:绿屏死机; zh-tw:綠白當機; zh-hk:綠屏死機;
}}
}}
{{Refimprove|time=2013-04-24T18:27:31+00:00}}
{{Refimprove|time=2013-04-24T18:27:31+00:00}}
{{Otheruses
|subject=一種電腦故障畫面
|other=使用藍色背景的一種攝影技術
|色鍵
}}
{{redirect|BSoD|缩写同样为“BSoD”的系统错误|黑屏死机}}
{{redirect|BSoD|缩写同样为“BSoD”的系统错误|黑屏死机}}
{{not|红屏死机|绿屏死机}}
{{not|红屏死机}}
{{各地中文名
{{各地中文名
|name={{lang|en|Blue Screen of Death}}
|name={{lang|en|Blue Screen of Death}}
|zh-tw=藍螢幕當機、藍白當機
|zh-tw=藍螢幕當機、藍白當機
|zh-hk=藍死機、藍畫面當
|zh-hk=藍畫面死機、藍屏死
|zh-cn=蓝屏死机、蓝屏
|zh-cn=蓝屏死机、蓝屏
}}
}}
第31行: 第20行:
當[[Windows 9x]]出現BSOD錯誤時,通常會顯示兩次BSOD畫面。
當[[Windows 9x]]出現BSOD錯誤時,通常會顯示兩次BSOD畫面。


[[Windows NT体系结构|Windows NT系列]](包括[[Windows 2000]]、[[Windows XP]]等)的穩定性高於Windows 9x,當Windows NT出現致命錯誤而必須重新啟動時,會顯示BSoD畫面。BSOD画面上所显示的信息會有偵錯碼,例如:STOP: 0x0000004e,以及其簡短的錯誤訊息,用戶可以在微軟的[http://support.microsoft.com 技術支援網站] {{Wayback|url=http://support.microsoft.com/ |date=20210512210702 }}搜尋此偵錯碼出現時可能是什麼原因。但有時錯誤碼並不能讓使用者很快的找到導致-{zh-cn:蓝屏死机; zh-tw:藍白當機; zh-hk:藍畫面死機;}-的原因,反而會误导用户,因此可能要以[[試誤法]](trial and error)才能找出原因。
[[Windows NT体系结构|Windows NT系列]](包括[[Windows 2000]]、[[Windows XP]]等)的穩定性高於Windows 9x,當Windows NT出現致命錯誤而必須重新啟動時,會顯示BSoD畫面。BSOD画面上所显示的信息會有偵錯碼,例如:STOP: 0x0000004e,以及其簡短的錯誤訊息,用戶可以在微軟的[http://support.microsoft.com 技術支援網站] {{Wayback|url=http://support.microsoft.com/ |date=20210512210702 }}搜尋此偵錯碼出現時可能是什麼原因。但有時錯誤碼並不能讓使用者很快的找到導致藍白當機的原因,反而會误导用户,因此可能要以[[試誤法]](trial and error)才能找出原因。


Windows 9x/ME發生之BSoD允许用户选择继续或者重新启动。但是,VxD一般不随便显示BSoD──它们一般只在一个不通过重新启动就无法修复的错误发生时才显示BSoD,因此当BSoD显示时,系统已经不稳定或死机。在Windows 9x時代,出现蓝屏的最常见原因是[[DLL地獄|DLL-{zh-hans:地狱; zh-hant:衝突;}-]],意即同一个[[动态链接库|DLL]]的多个版本造成的不兼容;当应用程序需要使用这些DLL时,Windows将它们载入到内存;如果替换了DLL,下一次应用程序载入DLL时它可能不是该应用程序所希望的版本,且这种不兼容性随着安装更多的新软件而增加。[[Windows NT]]系列的穩定性明顯優於[[Windows 9x]],發生藍畫面死機的機率遠低於Windows 9x。
Windows 9x/ME發生之BSoD允许用户选择继续或者重新启动。但是,VxD一般不随便显示BSoD──它们一般只在一个不透過重新启动就无法修复的错误发生时才显示BSoD,因此当BSoD显示时,系统已经不稳定或死机。在Windows 9x時代,出现蓝屏的最常见原因是[[DLL地獄|DLL-{zh-hans:地狱; zh-hant:衝突;}-]],意即同一个[[动态链接库|DLL]]的多个版本造成的不兼容;当应用程序需要使用这些DLL时,Windows将它们载入到内存;如果替换了DLL,下一次应用程序载入DLL时它可能不是该应用程序所希望的版本,且这种不兼容性随着安装更多的新软件而增加。[[Windows NT]]系列的穩定性明顯優於[[Windows 9x]],發生藍畫面死機的機率遠低於Windows 9x。


==历史==
==历史==
第48行: 第37行:


==格式==
==格式==
[[File:Windows 98 BSOD color changed.png|thumb|在Windows 9x时代,可通过修改SYSTEM.ini来改变蓝屏的颜色]]
在[[Windows 8]]和[[Windows Server 2012]]之前,蓝屏死机都以[[皇室蓝]]为背景色显示[[银色]]的文字,这些文字包含了当前内存和寄存器的值。Windows Server 2012、Windows 8和[[Windows 10]]则使用了[[蔚蓝色]]作为背景。
在[[Windows 8]]和[[Windows Server 2012]]之前,蓝屏死机都以[[皇室蓝]]为背景色显示[[银色]]的文字,这些文字包含了当前内存和寄存器的值。Windows Server 2012、Windows 8和[[Windows 10]]则使用了[[蔚蓝色]]作为背景。


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


虽然名叫“蓝屏死机”,但在Windows 9x时代,蓝屏画面的颜色可以由用户自定义;而在2016年9月及之后(Build 14997以上)的Windows预览版本中,蓝屏死机变成了深绿色,以方便开发人员快速分辨版本。<ref>{{cite web|title=“蓝屏死机”说再见?微软Win10正测试“绿屏”死机|url=http://tech.sina.com.cn/n/k/2016-12-30/doc-ifxzczff3431111.shtml|website=新浪数码|archive-url=https://web.archive.org/web/20161231220617/http://tech.sina.com.cn/n/k/2016-12-30/doc-ifxzczff3431111.shtml|archive-date=2016-12-31|accessdate=2020-08-17}}</ref>Windows Insider内测主管[[多纳·萨尔卡尔]]称:“为了更好地区分Windows Insider内测用户与正式版用户的报告,我们将错误检查页面的背景(从蓝色)换成了绿色。Windows 10正式版会继续使用经典的蓝色,包括[[Windows 10#版本 1703(創意者更新)|Windows 10 创意者更新]]的最终版本。”<ref>{{cite web|title=Windows 10正式加入死机“绿屏”|url=http://news.mydrivers.com/1/515/515284.htm|website=快科技|archive-url=https://web.archive.org/web/20171204093423/http://news.mydrivers.com/1/515/515284.htm|archive-date=2017-12-04|accessdate=2020-08-17}}</ref>
虽然名叫“蓝屏死机”,但在Windows 9x时代,蓝屏画面的颜色可以由用户自定义;而在2016年9月及之后的Windows预览版本中,蓝屏死机变成了深绿色,以和正式版本的Windows蓝屏做区分,方便开发人员快速分辨版本。


==Windows NT==
==Windows NT==
第70行: 第60行:
在[[Windows Server 2012]]之前,蓝屏死机界面会显示一个大写的错误名称(例如APC_INDEX_MISMATCH)、一个十六进制的错误码(如0x00000001)和四个参数。一般的显示格式如下:
在[[Windows Server 2012]]之前,蓝屏死机界面会显示一个大写的错误名称(例如APC_INDEX_MISMATCH)、一个十六进制的错误码(如0x00000001)和四个参数。一般的显示格式如下:


{{quote|错误码 (参数 1, 参数 2, 参数 3, 参数 4) 错误名称}}
{{quote|错误码参数 1, 参数 2, 参数 3, 参数 4)错误名称}}


根据错误码及其性质,参数可能会指出错误的原因和/或位置。此外,蓝屏界面上还会显示四段一般性的解释与建议,有时也会指出其他的技术信息,例如出错文件的名称和内存地址。
根据错误码及其性质,参数可能会指出错误的原因和/或位置。此外,蓝屏界面上还会显示四段一般性的解释与建议,有时也会指出其他的技术信息,例如出错文件的名称和内存地址。
第91行: 第81行:
File:Windows XP BSOD.png|Windows [[Windows XP|XP]]/[[Windows Vista|Vista]]/[[Windows 7|7]]
File:Windows XP BSOD.png|Windows [[Windows XP|XP]]/[[Windows Vista|Vista]]/[[Windows 7|7]]
File:Blue Screen of Death.png|Windows [[Windows 8|8/8.1]]/[[Windows 10|10]](版本1507/1511)
File:Blue Screen of Death.png|Windows [[Windows 8|8/8.1]]/[[Windows 10|10]](版本1507/1511)
File:Bsodwindows10.png|[[Windows 10]](版本1607及以后)
File:Bsodwindows10.png|[[Windows 10]](版本1607后)/[[Windows 11|11]]
File:GSoD_of_Windows_10_Inside_Previews.png|Windows 10([[Windows预览体验计划|预览版]],Build 14997之后)
File:BSOD Windows 11.jpg|[[Windows 11]](早期版本)
</gallery>
</gallery>


==相關條目==
==相關條目==
* [[屏死]]
* [[核心錯誤]]
* [[核心錯誤]]
* [[綠白當機]]
* [[紅屏死機]]
* [[屏死]]
* [[2024年7月全球网络异常事件]]


== 参考文献 ==
== 参考文献 ==

2024年8月21日 (三) 07:35的最新版本

Blue Screen of Death」的各地常用名稱
中国大陸蓝屏死机、蓝屏
臺灣藍螢幕當機、藍白當機
港澳藍畫面死機、藍屏死機
Windows 10中的蓝屏死机画面(版本 1607-21H2),它包含了一个悲伤颜文字和一个用于快速排查错误的QR碼
深圳地铁5号线大学城站的深圳通充值机蓝屏死机
整間電腦教室出現藍色畫面的情況
首爾地鐵車廂內的蓝屏死机

蓝屏死机(英語:Blue Screen of Death,缩写为:BSoD)指的是微软Windows操作系统在无法从一个系统错误中恢复过来时所显示的屏幕图像。

Windows 9x出現BSOD錯誤時,通常會顯示兩次BSOD畫面。

Windows NT系列(包括Windows 2000Windows XP等)的穩定性高於Windows 9x,當Windows NT出現致命錯誤而必須重新啟動時,會顯示BSoD畫面。BSOD画面上所显示的信息會有偵錯碼,例如:STOP: 0x0000004e,以及其簡短的錯誤訊息,用戶可以在微軟的技術支援網站页面存档备份,存于互联网档案馆)搜尋此偵錯碼出現時可能是什麼原因。但有時錯誤碼並不能讓使用者很快的找到導致藍白當機的原因,反而會误导用户,因此可能要以試誤法(trial and error)才能找出原因。

Windows 9x/ME發生之BSoD允许用户选择继续或者重新启动。但是,VxD一般不随便显示BSoD──它们一般只在一个不透過重新启动就无法修复的错误发生时才显示BSoD,因此当BSoD显示时,系统已经不稳定或死机。在Windows 9x時代,出现蓝屏的最常见原因是DLL地狱,意即同一个DLL的多个版本造成的不兼容;当应用程序需要使用这些DLL时,Windows将它们载入到内存;如果替换了DLL,下一次应用程序载入DLL时它可能不是该应用程序所希望的版本,且这种不兼容性随着安装更多的新软件而增加。Windows NT系列的穩定性明顯優於Windows 9x,發生藍畫面死機的機率遠低於Windows 9x。

历史

[编辑]
Windows 1.02.0中的蓝屏死机
2019年一家药店门前的蓝屏死机
发生在纳什维尔国际机场的Windows 98蓝屏死机
发生在CNIT的一次蓝屏死机
发生在Vélo'v的蓝屏死机

蓝屏死机自Windows 1.0就已经存在。在Windows 1.x-2.x中,当Windows发现了版本过高的DOS系统时,它将会在继续启动前显示一个蓝底白字的界面“Incorrect DOS version”和一个列有内核模块及它们各自内存地址的列表。不过,这个蓝屏死机仍并非真正的系统错误;当真正的错误发生时,系统反而会锁死,或直接退出到DOS。Windows 3.0中设计了一个专门用来显示重要系统信息的对话框,这些信息通常会来自386增强模式下的驱动程序,或其他无法正常运行的程序。[1][2]

在Windows 3.1中,这一对话框由黑色改为了蓝色,并且会在按下Ctrl+Alt+Del(用于打开任务管理器)时出现,如果当时没有无响应的程序。当系统错误足够严重时,Windows 3.x仍然会直接退出到DOS。[1]

现在通常所说的蓝屏死机界面在Windows NT 3.1Windows NT系列的首个系统,发布于1993年)中首次出现,并延续到了之后的所有Windows系统中。蓝屏死机界面通常由编写不良的驱动程序或故障的硬件引起,如内存故障、供电问题、过热或超出其规格限制的硬件。在Windows 9x的时代,系统内核中不完整的动态链接库或bug也会导致蓝屏死机。Windows 9x相比于后续的Windows版本,蓝屏死机非常常见。[3]

格式

[编辑]
在Windows 9x时代,可通过修改SYSTEM.ini来改变蓝屏的颜色

Windows 8Windows Server 2012之前,蓝屏死机都以皇室蓝为背景色显示银色的文字,这些文字包含了当前内存和寄存器的值。Windows Server 2012、Windows 8和Windows 10则使用了蔚蓝色作为背景。

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

虽然名叫“蓝屏死机”,但在Windows 9x时代,蓝屏画面的颜色可以由用户自定义;而在2016年9月及之后(Build 14997以上)的Windows预览版本中,蓝屏死机变成了深绿色,以方便开发人员快速分辨版本。[4]Windows Insider内测主管多纳·萨尔卡尔称:“为了更好地区分Windows Insider内测用户与正式版用户的报告,我们将错误检查页面的背景(从蓝色)换成了绿色。Windows 10正式版会继续使用经典的蓝色,包括Windows 10 创意者更新的最终版本。”[5]

Windows NT

[编辑]

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

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

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

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

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

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

细节

[编辑]

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

错误码(参数 1, 参数 2, 参数 3, 参数 4)错误名称

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

而随着Windows Server 2012的发布,蓝屏死机的界面大幅改动并删去了以上的所有信息,只留下了错误名称和一段简短的描述。Windows 8加入了一个哭脸的颜文字。不过,十六进制的错误码和参数仍然能在事件查看器和内存转储文件中被查询到。从Windows 10 版本 14393开始,增加了一个用于快速故障排除的二维码。

不同版本的Windows發生蓝屏

[编辑]
在Windows XP中,程式發生較小問題時不會出現BSoD,而只會出現「程式發生錯誤」屏幕。圖為在香港維多利亞公園的一個LED屏幕上顯示的錯誤信息

默认情况下,BSoD的显示是蓝(0x01或#0000AA,Windows 8/10則是#2067B2)底白(0x0F或#FFFFFF)字。显示的信息包括了当前的内存值以及寄存器值。

BSoD已经极少出现在Windows NT家族中。当在较轻微的软件错误出现时,虽然程序依然可能崩溃,但由于新系统中更好的内存管理,类似错误并不会损害到整个操作系统。在这些系统中,“真正的”BSoD只在整个系统崩溃时才会出现。

BSoD最早出现在Windows 1.0中。另外,在微软遊戲主機XBOX出现的畫面不是藍色,而是綠色。而在XP/Vista/7中,存在一种比BSoD更严重的紅白當機畫面,常见于驱动程序故障。[9] Windows Insider Preview有綠屏死機畫面和藍屏死機畫面。

在中文版本的操作系统中,Windows 3.2与Windows 95(不包括OSR2)中蓝屏内容为中文,之后版本的蓝屏均为英文提示,直到Windows 8之后才重新换回中文。

相關條目

[编辑]

参考文献

[编辑]
  1. ^ 1.0 1.1 Blue screen of death. BetaWiki. [2020-08-31]. (原始内容存档于2021-01-24) (英语). 
  2. ^ 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) (美国英语). 
  3. ^ Garmon, Jay. Geek Trivia: Death by operating system. TechRepublic. 2007-04-16 [2021-06-01]. (原始内容存档于2022-03-10) (英语). 
  4. ^ “蓝屏死机”说再见?微软Win10正测试“绿屏”死机. 新浪数码. [2020-08-17]. (原始内容存档于2016-12-31). 
  5. ^ Windows 10正式加入死机“绿屏”. 快科技. [2020-08-17]. (原始内容存档于2017-12-04). 
  6. ^ Microsoft Windows NT Workstation Resource Kit需要免费注册 1st. Redmond, WA: Microsoft Press. 29 October 1996. ISBN 1-57231-343-9. 
  7. ^ DOMARS. Getting Started with WinDbg (Kernel-Mode). msdn.microsoft.com. [15 June 2018]. (原始内容存档于2016-03-14). 
  8. ^ Stop error code 0x0000007B (INACCESSIBLE_BOOT_DEVICE). support.microsoft.com. 2018-04-17 [2020-01-16]. (原始内容存档于2021-03-28). 
  9. ^ 怎样解决cs红屏死机现象_系统优化/辅助使用问题_PConline快问页面存档备份,存于互联网档案馆),2009年6月25日查阅

外部連結

[编辑]