本文介绍了什么是 Windows 7 蓝屏错误、其出现的原因以及如何识别和解决此问题。
目录:
- 什么是蓝屏错误?
- 运行联机诊断程序
- 诊断出现常见蓝屏错误消息的问题
- 0x000000ED and 0x0000007B
- 0x00000024
- 0x0000007E and 0x0000008E
- 0x00000050
- 0x000000D1
- 0x000000EA
- 使用Windows调试程序
本文针对Microsoft Windows 7。
单击下方以更改操作系统。
戴尔建议:
解决 Windows 7 中(Microsoft 内容)的停止(蓝屏)错误
视频(仅限英文)-对Windows中的蓝屏问题进行故障排除
当 Windows 遇到某些情况时,它会停止并显示蓝屏,且以白色文本显示生成的诊断信息。术语"蓝屏"或"蓝屏死机"源于这些错误。
存在以下情况时,将会出现蓝屏错误:
- Windows 检测到一个无法在不丢失数据的情况下恢复的错误
- Windows检测到关键的操作系统数据已损坏
- Windows 检测到硬件出现不可恢复的故障
错误消息已从 Windows NT 4.0 中显示的密密麻麻的信息更改为 Windows 现代版本中相对较少的消息。
戴尔提供了在线诊断程序,可以识别计算机硬件的问题或可能造成问题的配置。访问Dell Online Diagnostics以获得更多信息并对计算机运行扫描。
导致这两个错误的原因相似,并且相同的步骤对两者都适用。这些Stop代码通常会在启动过程中出现。当您遇到其中一个Stop代码时,将会出现以下情况:
- 系统已完成开机自检(POST)。
- 系统已加载NTLDR,并将启动过程的控制权移交给NTOSKRNL(内核)。
- NTOSKRNL被混淆。它无法找到剩下的部分,也无法在认为被存储的位置读取文件系统。
要解决此错误,您必须了解 Windows 内核混淆的原因并解决混淆问题。
检查事项
- 系统 BIOS 中的 SATA 控制器配置 如果 SATA 控制器已从 ATA 模式切换到 AHCI 模式(或从 AHCI 模式切换到 ATA 模式),由于不同的模式需要不同的驱动程序,因此 Windows 将无法与 SATA 控制器进行通信。尝试切换BIOS中的SATA控制器模式。
- RAID 设置: 如果您一直在尝试进行 RAID 控制器设置,则可能会收到此错误。尝试将RAID设置恢复为自动检测(通常十分准确)。
- 电缆拔插不当或错误: 尝试重新拔插连接驱动器及其控制器的数据线两端。
- 硬盘出现故障: 在硬盘上运行内置诊断程序。请记住:代码7指示的是可更正的数据损坏,而非磁盘故障。
- 文件系统损坏: 从 Windows 安装光盘启动恢复控制台,并运行 chkdsk/f/r。
- 未正确配置 BOOT.INI (Windows Vista):如果不小心清除或修补了 boot.ini 文件,则您可能会在启动过程中收到 Stop 代码 0x7B。从Windows安装光盘启动恢复控制台,并运行BOOTCFG/REBUILD
此 Stop 代码表示 NTFS 文件系统驱动程序遇到无法处理的问题,此问题几乎是由以下三个因素引起:
- 磁盘上的数据损坏
- 内存中的数据损坏
- 系统内存用竭(此情况通常只会在过载的服务器上出现)
检查事项
- 重新拔插内存和所有驱动器数据线,以避免出现因硬件安装不当或错误而造成的数据损坏问题。
- 运行内存和硬盘全面诊断程序。无法在此进行彻底的快速测试。您需要运行全面系统诊断程序。
- 如果这些诊断程序均已通过,则请从Recovery Console("恢复控制台")运行全面系统检查(chkdsk /f /r),以检测并(可能)修复所有损坏的数据。
- 如果以上措施均无法解决此问题,则请重新安装Windows。
- 如果重新安装Windows也无法解决此问题,请更换硬盘。
这两个错误表示内核中运行的程序遇到了无法恢复的意外情况。它们具有相同的故障诊断和解决步骤。您可能需要使用Windows调试程序找出导致此错误的原因。
检查事项
- 如果蓝屏信息中提到了某驱动程序或库文件,则请找出此文件隶属的驱动程序或应用程序,然后更新或禁用它。
- 将系统BIOS更新为可用的最新版本。
- 卸载所有最近安装的程序,并回滚所有最近安装的驱动程序。
- 对计算机内存运行诊断程序。
此 stop 代码表示系统尝试访问不存在的内存。这通常是由以下原因造成:
- 驱动程序尝试访问一页不存在的内存
- 系统服务(如病毒扫描仪)出现意外情况
- 故障或未正确安装内存
- 硬盘上的数据损坏
使用Windows调试程序查明导致这些错误的确切原因。
检查事项
- 如果蓝屏错误中提到了某驱动程序或库文件,则请找出此文件隶属的驱动程序或应用程序,然后将其更新为最新版本或卸载此驱动程序或程序。
- 如果在启动过程中出现错误,则请尝试启动至最后一次正确配置。
- 如果安装程序或驱动程序后出现错误,则请卸载此程序或驱动程序。
- 重新拔插内存和硬盘数据线后,请尝试对硬盘和内存运行全面诊断。
此 stop 代码表示驱动程序尝试访问它不应访问的特定内存区域,即驱动程序本身存在缺陷。故障诊断的目的是找到此驱动程序,并禁用或更换它。使用Windows调试程序诊断此错误。
如果没有此调试程序,则您只能卸载/更新/回滚蓝屏信息中提到的包含驱动程序文件的驱动程序。
此蓝屏错误表示设备驱动程序(通常是显卡驱动程序)停滞以等待下一项操作(通常是硬件操作)。多数人可能已看到与此蓝屏信息相关联的
nv4_disp.sys。
检查事项:
- 请确保显卡驱动程序已更新为戴尔的最新版本。
- 系统 BIOS 已完全更新。
- 如果视频驱动程序和系统BIOS均已完全更新,则请咨询制造商以确定是否已将驱动程序更新为最新版本。
- 最后一种解决办法是尝试更换显卡。
重新安装Windows不可能阻止此错误再次出现。
Windows 调试程序是 Microsoft 软件开发商和支持人员使用的一种主要工具,用于分析和处理导致内存转储的错误。
Windows 调试程序是一种附带了很多有用应用程序的强大工具。但在本文中,我们只重点介绍其通过分析因蓝屏错误生成的内存转储文件以确定错误原因的功能。
使用此工具前,请记住以下内容:
- Windows调试程序不是真正的Windows工具。您必须从Microsoft网站上下载并安装此应用程序(15MB)。安装此工具要求用户具有管理员访问权限。
- 此调试程序要求在使用前进行小部分的自定义。
- 调试程序对内存转储进行完全分析时,最快要用30秒,最慢要2分钟。
要使用此工具,请执行以下步骤:
- 从Microsoft网站上下载并安装Windows调试程序
如果您使用 Google 搜索"Windows调试程序",返回的第一个链接将为 Windows 调试程序主页。
- 完成安装后,依次单击Start(开始)、All Programs(所有程序)、Debugging Tools for Windows和WinDbg以打开Windows调试程序。
- 配置调试程序使用的符号路径,以便将内存转储文件的地址转为有意义的位置名称:展开File(文件)菜单,选择Symbol File Path(符号文件路径),在对话框中键入SRV*c:\debug_symbols*http://msdl.microsoft.com/download/symbols,然后单击OK(确定)。
- 打开一个微型转储文件:展开File(文件)菜单,选择Open Crash Dump(打开崩溃转储),并选择所需的转储文件,然后单击Open(打开)。
系统通常将微型转储文件存储在以下其中一个路径中:C:\WINNT\Minidump\或C:\Windows\Minidump\。文件将被命名为miniMMDDYY-NN.dmp,其中MM代表月,DD代表日,YY则代表创建转储文件的年份。如果多个转储文件于同一天生成,NN则是创建转储文件的序号(在特定日期生成的第一个崩溃转储的编号是01,第二个的编号是02,依此类推)。
- 调试程序将打开转储文件,并对导致系统崩溃的原因作出简短说明。(图2)
首次使用调试程序在系统中打开并转储文件时,在其返回任何信息之前,将花费几分钟下载背景中的符号信息。
图2:Windows调试程序 调试程序命令行的建议命令
蓝屏的Stop代码(1000007F与0x7F相同)
Windows认为导致崩溃的原因(在atapi.sys一例中,您有时会看到memory_corruption等内容)
- 当它返回初步分析时,调试程序将告诉您如何进行深入分析。在窗口底部的命令行(kd>)字段中键入"!analyze -v",并按Enter键,以使WinDbg对此文件进行详细分析。
分析结果会很长,您可能需要在调试程序窗口中通过垂直滚动找到所有相关信息。
图3:分析结果 Stop代码的详细说明(在本例中,您可以看到内核在尝试处理错误时遇到了EXCEPTION_DOUBLE_FAULT (8)或错误)
图4:进一步分析结果 错误检查代码(注意:此例中的数字8表示双重故障)
系统因为此确切错误而崩溃的次数(通常是1)
Windows在其中对崩溃进行分类的存储桶
系统崩溃时的堆栈记录,其中顶部列出了最近调用的程序(您可以看到系统在处理IDE控制器请求时发生崩溃的实例)
图5:其它分析
系统崩溃时所在的模块名称。在实际系统中,模块名称是一个链接,通过单击它您可以收到一些关于此模块的有用信息