Crash Dump File 分析

安装Debugging Tools for Windows

下载地址:

注意 :不同的操作系统会对应不同的符号库文件

我的xp2的,这是地址:Windows XP with Service Pack 2 symbols,x86 checked symbols, all languages [188MB]

PS:这是所有操作系统符号库文件的链接,希望有你所要的

 

1)打开安装的windows debug运行,在windows debug中设置好符号库文件的路径,以便分析时能调用到正确的符号库文件;设置好符号库文件的路径,以便分析时能调用到正确的符号库文件;
spacer.gifspacer.gif
(27.01 KB)
2009-2-4 01:00
spacer.gifspacer.gif
(14.05 KB)
2009-2-4 01:00
2)打开你要分析的windows Minidump文件:File-----open crash dump,选择前面提到的生成的后缀为.dmp格式的文件(C:\windows\minidump)。
spacer.gifspacer.gif
(33.28 KB)
2009-2-4 01:00
选择产生的那个dump文件
PS:对于电脑正常的网友,如果想用Debugging Tools for Windows分析蓝屏文件,可以去网络论坛找到这个dmup文件下载了,可以放在电脑的任何地方,不一定非要放在C\windows\minidump中。O(∩_∩)o…
spacer.gif

1. 关于系统蓝屏

Windows操作系统因系统设置故障、软件故障、硬件故障、驱动程序故障、网络故障等各种类型的故障产生了严重的错误,引起Windows无法继续维持正常运行时,Windows出于避免用户数据丢失及损坏计算机的考虑,将自动停止运行并显示“蓝屏”错误信息。如下图所示:

此蓝色背景错误信息画面一般简称为“蓝屏(Blue Screen of Death)简称BSoD” 或“停止屏(Stop Error Screen)”,它可能会长时间停留在显示屏;也可能会在短时间显示之后自动重新启动计算机。

“蓝屏”故障发生后是否自动重新启动计算机取决于“启动与故障恢复”设置。如下图:

我们可以在 Windows 控制面板、打开"系统"属性、切换到"高级"选项卡、然后打开"启动和故障恢复"选项卡。勾选"自动重新启动"即可在蓝屏后自动重启系统。

在默认的系统设置中,Windows 2000遇到“蓝屏”故障后“蓝屏”错误信息将长时间停留在显示屏,直到您关闭或重新启动计算机;Windows XP及后续版本的Windows遇到“蓝屏”故障后“蓝屏”错误信息将在短时间显示之后自动重新启动计算机。

关于蓝屏颜色,默认情况下蓝屏的显示是蓝(0x01或#0000AA)底白(0x0F或#FFFFFF)字。微软公司还很有幽默感地加入了一个可以让用户自行修改蓝屏死机的设置的工具system.ini。目前轻微的软件错误出现时,虽然程序可能崩溃,但由于系统中较好的内存管理机制,错误并不会损害到整个操作系统所以不会直接导致蓝屏。“真正的”蓝屏死机只在整个操作系统崩溃时才会出现。此时系统内核无法修复错误,用户所能做的唯一一件事就是重新启动操作系统,这将丢失所有未储存的工作,还有可能破坏文件系统的稳定性。

蓝屏死机出现的最常见原因一个是DLL地狱,意即同一个DLL的多个版本造成的不兼容。当应用程序需要使用这些DLL时,Windows将它们载入内存;如果替换了DLL,下一次应用程序载入DLL时它可能不是该应用程序所希望的版本。这种不兼容性随着安装更多的新软件而增加,这也是为什么一个新安装的Windows往往比安装运行一段时期后的Windows更加稳定之主要原因。另一个重要的原因就是硬件问题,例如硬件过热、超频使用、硬件的电子零件损坏(例如电容器的电解液流出损坏)及BIOS设置错误或其代码有错误等都可能导致蓝屏死机。

2. 如何在系统或程序crash的时候生成dump file

Windows 2000/XP/Server 2003/Windows Vista/Win7 等系统均为我们提供了保存"内存转储文件"(Crash Dump File)的功能。在"启动和故障恢复"选项卡中,"写入调试信息"下面选一项 如"小内存转储(64KB)"或"核心内存转储",以便在发生蓝屏死机时自动保存内存转储文件,这样我们就可以根据 Windows 在蓝屏死机时记录的内存转储文件判断故障原因了。

内存转储文件是一个扩展名为 .DMP 的文件。其中,"小内存转储"文件保存在 Windows\Minidump 文件夹中,文件大小为 64KB,它只记录有发生蓝屏死机时的关键信息;"核心内存转储"及"完全内存转储"文件则保存在 Windows 文件夹中,文件名为 MEMORY.DMP,它们分别记录有发生蓝屏死机时的核心内存信息和完整的内存信息。为了节省硬盘空间,通常我们可以选择"小内存转储"。

关于应用程序的Crash dump file

应用程序中可以调用API函数 SetUnhandledExceptionFilter 捕获异常,再调用 DbgHelp.dll 里面的API函数MiniDumpWriteDump 或 DbgHelpCreateUserDump 生成Crash dump file。

对于大多数没有自动生成dump file的程序崩溃(crash)的时候, 为了以后能够调试分析问题, 可以使用WinDBG要把当时程序内存空间数据都保存下来,生成dump file。

步骤:

1) 打开WinDBG并将之Attach 到crash的程序进程

2) 输入产生dump 文件的命令

WinDBG产生dump 文件的命令是 .dump ,可以选择不同的参数来生成不同类型的dump文件。

选项(1): /m

命令行示例:.dump /m C:\dumps\myapp.dmp

注解: 缺省选项,生成标准的minidump, 转储文件通常较小,便于在网络上通过邮件或其他方式传输。 这种文件的信息量较少,只包含系统信息、加载的模块(DLL)信息、 进程信息和线程信息。

选项(2): /ma

命令行示例:.dump /ma C:\dumps\myapp.dmp

注解: 带有尽量多选项的minidump(包括完整的内存内容、句柄、未加载的模块,等等),文件很大,但如果条件允许(本机调试,局域网环境), 推荐使用这中dump。

选项(3):/mFhutwd

命令行示例:.dump /mFhutwd C:\dumps\myapp.dmp

注解:带有数据段、非共享的读/写内存页和其他有用的信息的minidump。包含了通过minidump能够得到的最多的信息。是一种折中方案。

3. 如何分析dump file 获得蓝屏或程序crash的原因

遇到了蓝屏死机,我们首先可以根据屏幕显示的蓝屏错误提示代码初步判断故障原因。错误代码即上图中的Technical Information部分。代码的格式一般为0x???????? (arg1, arg2, arg3, arg4)。

前面是错误代码 (crash error),括号里面的四个参数分别是:

Arg1: memory referenced

Arg2: IRQL
Arg3: bitfield :
bit 0 : value 0 = read operation, 1 = write operation
bit 3 : value 0 = not an execute operation, 1 = execute operation (only on chips which support this level of status)
Arg4: address which referenced memory
例如 0x000000D1 错误,通常是由硬件设备驱动程序配置不当引起的;0x000000EA 错误,通常与显卡显示器设置不当有关,等等。每种不同的代码均代表不同类型的故障。您可以以故障代码为关键词在Microsoft KB 知识库(knowledge base )、microsoft.com或其它搜索引擎(例如Bing,google)中搜索“蓝屏”故障的相关 信息。例如,您可以在Microsoft知识库(KB)中以0x0000007B为关键词搜索到关于0x0000007B故障的知识库文章KB324103 (http://support.microsoft.com/kb/324103/zh-cn/ ) 。

微软知识库 Microsoft Windows knowledge base 站点在:

http://support.microsoft.com
微软白皮书 Microsoft Windows WhitePaper 站点在:
http://www.microsoft.com/downloads

但是,如果在微软知识库中找不到有关蓝屏错误提示的说明,或者解释不够详细,不能很好的帮助我们分析和排除故障。那么可以借助微软官方提供的 Debugging Tools for Windows 工具实现。

微软官方下地址: http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx

下载 Debugging Tools 进行安装,然后启动 Debugging Tools - WinDBG,在程序主菜单中选择"File(文件)"-"Open Crash Dump(打开内存转储文件)",打开 .DMP 内存转储文件即可。Debugging Tools 可以自动为我们分析内存转储文件在蓝屏死机时记录的内存信息,并从中分析可能的故障原因。

例如:

有一台 Windows XP 计算机经常发生错误代码为 0x0000007F 的“蓝屏”故障,原因未知。为了调查故障原因,我们在 Windows XP 中设置了保存“小内存转储文件(64KB)”。当计算机再次发生了 0x0000007F 蓝屏故障后,我们在重新启动 Windows 后,使用 Debugging Tools 打开了这台计算机保存于 Windows\Minidump 文件夹中的 .DMP 内存转储文件,Debugging Tools 经过自动分析后弹出了分析报告,报告此错误“Probably caused by TM_CFW.SYS(可能由 TM_CFW.SYS 引起)”。原来,TM_CFW.SYS 位于 %SystemRoot%\system32\drivers 文件夹,它是趋势的防火墙程序,用于将趋势防火墙以系统服务的形式随 Windows 启动一同加载。经过我们回忆,这台计算机正是在修改趋势防火墙程序的设置后经常出现 0x0000007F “蓝屏”故障。因此,趋势防火墙很可能出现了设置不当的问题。为了证实这一猜想,我们在 Windows XP 中通过“控制面板”中的“添加删除程序”卸载了趋势防火墙,然后按照默认设置重新安装了,果然问题得以解决。

关于windbg分析dump file 的方法可以参考文章:《Windbg 分析 Dump File 简单演示》 http://www.rainsts.net/article.asp?id=765 和 Crash Dump分析笔记  http://bbs.pediy.com/showthread.php?t=71643

其他辅助工具:

BlueScreenView: http://www.nirsoft.net/utils/blue_screen_view.html  查看系统crash dump file的GUI工具,可以自动分析蓝屏原因。

AppCrashView: http://www.nirsoft.net/utils/app_crash_view.html  查看应用程序Crash的工具。

附录:28个常见的“蓝屏”故障代码的排查信息

收起该表格展开该表格

错误名称 0x0000000A:IRQL_NOT_LESS_OR_EQUAL
故障分析 0x0000000A 错误表示在内核模式中存在以过高的进程内部请求级别(IRQL)访问其没有权限访问的内存地址。这个错误一般是因为硬件设备的驱动程序存在BUG,某些软件或硬件与Windows不兼容引起的。如果遇到0x0000000A错误,建议尝试以“最后一次正确的配置”方式启动 Windows,并检查一下最近有没有安装或升级过任何系统更新、硬件设备的驱动程序、BIOS、Firmware及应用软件等。如果有的话,请将最近更新过的应用软件及硬件设备逐一卸载、恢复到之前可以稳定运行的版本,看看问题能否解决。

收起该表格展开该表格

错误名称 0x0000001A:MEMORY_MANAGEMENT
故障分析 0x0000001A 错误表示内存管理遇到了问题。这个错误一般是因为硬件设备的故障引起的。如果遇到0x0000001A错误,建议检查一下最近有没有安装过新的硬件设备或驱动程序。如果有的话,请将最近安装过的硬件设备或驱动程序逐一卸载,看看问题能否解决。另外,如果是在安装Windows时遇到0x0000001A错误,请检查一下计算机的内存容量及规格是否符合Windows的要求。
参考资料 关于0x0000001A错误,可以参考Microsoft知识库文章KB282504:
http://support.microsoft.com/kb/282504/zh-cn (http://support.microsoft.com/kb/282504/zh-cn)

收起该表格展开该表格

错误名称 0x0000001E:KMODE_EXCEPTION_NOT_HANDLED
故障分析 0x0000001E 错误表示Windows检测到一个非法的或未知的进程指令。这个错误一般是因为内存发生故障引起的,或者与0x0000000A错误相似,表示在内核模式中存在以过高的进程内部请求级别(IRQL)访问其没有权限访问的内存地址。如果遇到0x0000001E错误,建议首先检查一下软件及硬件兼容性,看看最近有没有安装过新的应用软件、硬件设备或驱动程序。如果有的话,请将最近安装过的软件及硬件逐一卸载,看看问题能否解决;其次,请检查一下蓝屏故障提示中是否提到问题是由WIN32K.SYS文件引起的,如果是的话,那么很可能是远程控制类软件引起的故障。
参考资料 关于0x0000001E错误,可以参考Microsoft知识库文章KB275678:
http://support.microsoft.com/kb/275678/zh-cn (http://support.microsoft.com/kb/275678/zh-cn)

收起该表格展开该表格

错误名称 0x00000023:FAT_FILE_SYSTEM
故障分析 0x00000023错误表示采用了FAT、FAT32文件系统的磁盘驱动器遇到了问题。这个错误一般是因为磁盘驱动器本身存在故障引起的,例如磁盘错误、文件错误、磁盘碎片过多、磁盘读写过于频繁、存在体积过大的文件、中断要求封包(IRP)受到了损坏等。如果遇到0x00000023错误,建议首先执行磁盘扫描程序对所有的磁盘驱动器进行全面检测,看看磁盘驱动器是否存在磁盘错误或文件错误;其次请暂时关闭所有可能在后台对磁盘驱动器中的数据进行操作的软件,例如杀毒软件、数据备份软件等;再其次请执行SFC /SCANNOW命令,检查一下Windows系统文件%SystemRoot%\system32\Drivers\FASTFAT.SYS是否受到了损坏或丢失;最后请在Windows中重新安装一下主板驱动程序提供的SATA或IDE控制器驱动程序。
参考资料 关于0x00000023错误,可以参考Microsoft知识库文章KB290182:http://support.microsoft.com/kb/290182/zh-cn (http://support.microsoft.com/kb/290182/zh-cn)

收起该表格展开该表格

错误名称 0x00000024:NTFS_FILE_SYSTEM
故障分析 0x00000024错误表示采用了NTFS文件系统的磁盘驱动器遇到了问题。这个错误一般是因为磁盘驱动器本身存在故障引起的,其触发原因与0x00000023错误基本相同。如果遇到0x00000024错误,可以参考0x00000023错误的解决方案。在检查系统文件时,请检查%SystemRoot%\system32\Drivers\NTFS.SYS是否受到了损坏或丢失。

收起该表格展开该表格

错误名称 0x0000002E:DATA_BUS_ERROR
故障分析 0x0000002E错误表示系统内存存储器的奇偶校验遇到了问题。这个错误一般是因为内存发生故障(包括系统内存、显存、各种缓存),硬件设备驱动程序试图访问错误的内存地址,计算机遭到了病毒、***、间谍软件、广告软件、流氓软件等恶意程序的***等原因引起的。如果遇到0x0000002E错误,建议首先执行磁盘扫描程序对所有的磁盘驱动器进行全面检测,看看磁盘驱动器是否存在磁盘错误或文件错误;其次请执行安全防护类软件对计算机进行全面检查,看看计算机是否遭到了病毒、***、间谍软件、广告软件、流氓软件等恶意程序的***;再其次请使用内存检测软件对内存进行稳定性及兼容性测试,推荐使用Windows Memory Diagnostic、MemTest等检测软件;最后请打开机箱检查一下硬件设备的连接是否牢固。
参考资料 关于0x0000002E错误,可以参考Microsoft知识库文章KB218132:
http://support.microsoft.com/kb/218132/zh-cn (http://support.microsoft.com/kb/218132/zh-cn)

收起该表格展开该表格

错误名称 0x0000003F:NO_MORE_SYSTEM_PTES
故障分析 0x0000003F错误表示内存管理遇到了问题。这个错误一般是因为内存执行了错误的I/O(输入/输出)操作,存在BUG的硬件设备驱动程序错误地使用了内存资源,某个应用软件被错误地分配了大量的内核内存等原因引起的。如果遇到0x0000003F错误,建议检查一下最近有没有安装过新的应用软件或硬件设备驱动程序。如果有的话,请将最近安装过的应用软件(特别是磁盘优化软件及杀毒软件)或驱动程序逐一卸载,看看问题能否解决。

收起该表格展开该表格

错误名称 0x00000044:MULTIPLE_IRP_COMPLETE_REQUESTS
故障分析 0x00000044错误表示硬件设备的驱动程序遇到了问题。这个错误一般是因为硬件设备驱动程序存在BUG或安装不正确引起的。如果遇到0x00000044错误,建议检查一下最近有没有安装过新的硬件设备或驱动程序。如果有的话,请将最近安装过的硬件设备或驱动程序逐一卸载,看看问题能否解决。

收起该表格展开该表格

错误名称 0x0000004E:PFN_LIST_CORRUPT
故障分析 0x0000004E错误表示I/O输入/输出驱动程序结构遇到了问题。这个错误一般是因为硬件设备或驱动程序存在BUG或安装不正确引起的。如果遇到0x0000004E错误,建议首先执行硬件兼容性检测软件对所有的硬件设备进行全面检测,看看是否存在硬件兼容性问题、以及硬件设备是否支持Windows;其次请暂时禁用所有的文件系统筛选驱动程序,例如杀毒软件、数据备份软件等;另外如果是随机或是试图启动应用软件时遇到0x0000004E错误,请取出额外的内存,并对计算机中的随机存取内存(RAM)进行测试。
参考资料 关于0x0000004E错误,可以参考Microsoft知识库文章KB291806:
http://support.microsoft.com/kb/291806/zh-cn (http://support.microsoft.com/kb/291806/zh-cn)

收起该表格展开该表格

错误名称 0x00000050:PAGE_FAULT_IN_NONPAGED_AREA
故障分析 0x00000050错误表示内存管理遇到了问题。这个错误的可能原因较多,一般是因为内存发生故障(包括系统内存、显存、各种缓存),某个应用软件存在兼容性问题(特别是远程控制类软件及安全防护类软件),NTFS卷有所损坏,硬件设备存在故障等原因引起的。如果遇到0x00000050错误,建议尝试以安全模式启动 Windows,看看安全模式中有没有问题。0x00000050错误比较常见的原因是应用软件兼容性问题,如果以安全模式启动Windows后不会遇到0x00000050错误,那么内存发生故障、NTFS卷损坏、硬件设备存在故障等其它的可能原因基本可以被排除。这时可以检查一下最近有没有安装过新的应用软件(特别是远程控制类软件及安全防护类软件)。如果有的话,请将最近安装过的新应用软件逐一卸载,看看问题能否解决;反之,如果以安全模式启动Windows也会遇到0x00000050错误,那么有可能是内存发生故障、NTFS卷损坏、硬件设备存在故障等原因引起了0x00000050错误,通常需要综合其它故障信息判断故障原因。

收起该表格展开该表格

错误名称 0x00000051:REGISTRY_ERROR
故障分析 0x00000051错误表示Windows注册表或者系统配置管理器遇到了问题。这个错误一般是因为Windows注册表或系统配置管理器发生了错误的修改,或者Windows因为硬盘存在磁盘错误无法访问注册表文件引起的。如果遇到0x00000051错误,建议首先执行磁盘扫描程序对Windows的系统分区进行全面检测,看看Windows系统分区是否存在磁盘错误或文件错误,引起Windows无法访问注册表文件;其次请检查一下最近有没有对Windows注册表进行了错误的修改,如果以前曾经备份过注册表,请尝试恢复Windows注册表,如果没有备份过注册表,请重新安装Windows。
参考资料 关于0x00000051错误,可以参考Microsoft知识库文章KB282501:
http://support.microsoft.com/kb/282501/zh-cn (http://support.microsoft.com/kb/282501/zh-cn)

收起该表格展开该表格

错误名称 0x00000077:KERNEL_STACK_INPAGE_ERROR
故障分析 0x00000077错误表示Windows无法在虚拟内存或物理内存中找到需要使用的内核数据。这个错误一般是因为硬盘存在磁盘错误或文件错误,所需的相应数据受到了损坏或丢失,计算机遭到了病毒、***、间谍软件、广告软件、流氓软件等恶意程序的***等原因引起的。如果遇到0x00000077错误,建议首先执行磁盘扫描程序对所有的磁盘驱动器进行全面检测,看看磁盘驱动器是否存在磁盘错误或文件错误;其次请执行安全防护类软件对计算机进行全面检查,看看计算机是否遭到了病毒、***、间谍软件、广告软件、流氓软件等恶意程序的***。
参考资料 关于0x00000077错误,可以参考Microsoft知识库文章KB315266:
http://support.microsoft.com/kb/315266/zh-cn (http://support.microsoft.com/kb/315266/zh-cn)

收起该表格展开该表格

错误名称 0x0000007A:KERNEL_DATA_INPAGE_ERROR
故障分析 0x0000007A错误表示虚拟内存中的某些内核数据无法被读入内存。这个错误一般是因为内存发生故障,虚拟内存页面文件存在坏簇,计算机遭到了病毒、***、间谍软件、广告软件、流氓软件等恶意程序的***等原因引起的。如果遇到0x0000007A错误,建议首先执行磁盘扫描程序对所有的磁盘驱动器进行全面检测,看看磁盘驱动器是否存在磁盘错误或文件错误;其次请执行安全防护类软件对计算机进行全面检查,看看计算机是否遭到了病毒、***、间谍软件、广告软件、流氓软件等恶意程序的***。

收起该表格展开该表格

错误名称 0x0000007B:INACCESSIBLE_BOOT_DEVICE
故障分析 0x0000007B错误表示Windows在启动的过程中无法访问系统分区或启动卷。这个错误一般是因为Windows的系统分区存在磁盘错误或文件错误,主板的SATA或IDE控制器驱动程序受到了损坏或安装不正确,计算机遭到了病毒、***、间谍软件、广告软件、流氓软件等恶意程序的***等原因引起的。
如果遇到0x0000007B错误,建议首先执行磁盘扫描程序对所有的磁盘驱动器进行全面检测,看看磁盘驱动器是否存在磁盘错误或文件错误;其次请执行安全防护类软件对计算机进行全面检查,看看计算机是否遭到了病毒、***、间谍软件、广告软件、流氓软件等恶意程序的***;最后请为Windows重新安装一下主板驱动程序提供的SATA或IDE控制器驱动程序;另外,如果是在为计算机更换了主板之后遇到0x0000007B错误,这是因为新主板与旧主板采用的SATA或IDE控制器的芯片不同引起的,请尝试重新安装Windows,然后重新安装一下适合新主板使用的SATA或IDE控制器驱动程序。
参考资料 关于0x0000007B错误,可以参考Microsoft知识库文章KB822052:
http://support.microsoft.com/kb/822052/zh-cn (http://support.microsoft.com/kb/822052/zh-cn)

收起该表格展开该表格

错误名称 0x0000007E:SYSTEM_THREAD_EXCEPTION_NOT_HANDLED
故障分析 0x0000007E错误表示系统进程遇到了问题,但Windows错误处理器无法准确捕获错误类型。这个错误的可能原因较多,一般遇到此错误时比较麻烦。如果遇到0x0000007E错误,建议检查一下完整的蓝屏故障提示,看看有没有提到引起错误的具体是哪个文件,如果在蓝屏故障提示中看到某应用软件或某硬件设备驱动程序的文件名,问题一般与相应的应用软件或硬件设备有关;如果在蓝屏故障提示中没有显示引起错误的文件名,通常需要综合其它故障信息判断故障原因,建议检查一下Windows事件查看器,看看有没有相应的记录。

收起该表格展开该表格

错误名称 0x0000007F:UNEXPECTED_KERNEL_MODE_TRAP
故障分析 0x0000007F错误表示硬件设备遇到问题。这个错误一般是因为内存发生故障或CPU、内存、显卡等硬件设备超频过度引起的。如果遇到0x0000007F错误,建议首先检查一下CPU、内存、显卡等硬件设备是否经过了超频,如果是的话请将超频的设备恢复为默认的工作频率;其次请使用内存检测软件对内存进行稳定性及兼容性测试,推荐使用Windows Memory Diagnostic、MemTest等检测软件。

收起该表格展开该表格

错误名称 0x0000008E:KERNEL_MODE_EXCEPTION_NOT_HANDLED
故障分析 0x0000008E错误表示内核程序遇到了问题,但Windows错误处理器无法准确捕获错误类型。这个错误的可能原因较多,一般遇到此错误时比较麻烦。如果遇到0x0000008E错误,建议检查一下完整的蓝屏故障提示,看看有没有提到引起错误的具体是哪个文件,如果在蓝屏故障提示中看到某应用软件或某硬件设备驱动程序的文件名,问题一般与相应的应用软件或硬件设备有关;如果在蓝屏故障提示中没有显示引起错误的文件名,通常需要综合其它故障信息判断故障原因,建议检查一下Windows事件查看器,看看有没有相应的记录。

收起该表格展开该表格

错误名称 0x0000009C:MACHINE_CHECK_EXCEPTION
故障分析 0x0000009C错误表示硬件设备遇到了问题。这个错误一般是因为硬件设备的发热量过大或CPU、内存、显卡等硬件设备超频过度引起的。如果遇到0x0000009C错误,建议首先检查一下所有硬件设备工作时的发热量是否在正常范围内,散热器是否工作正常,并注意改善一下机箱的通风环境;其次请检查CPU、内存、显卡等硬件设备是否经过了超频,如果是的话请将超频的设备恢复为默认的工作频率。
参考资料 关于0x0000009C错误,可以参考Microsoft知识库文章KB329284:
http://support.microsoft.com/kb/329284/zh-cn (http://support.microsoft.com/kb/329284/zh-cn)

收起该表格展开该表格

错误名称 0x0000009F:DRIVER_POWER_STATE_FAILURE
故障分析 0x0000009F错误表示计算机的电源遇到了问题。这个错误通常发生在关机、重启、待机、休眠等与计算机电源有关的操作时,一般是因为电源有问题或ACPI高级电源选项配置不正确引起的。如果遇到0x0000009F错误,建议检查一下计算机的ACPI高级电源选项配置是否正确。请在主板BIOS设置中检查ACPI高级电源选项是否已经设置为“Enabled”,然后为Windows重新安装主板芯片组驱动程序;如果故障依旧,请使用“替换法”检测计算机的电源及主板是否工作正常。
参考资料 关于0x0000009F错误,可以参考Microsoft知识库文章KB315249:
http://support.microsoft.com/kb/315249/zh-cn (http://support.microsoft.com/kb/315249/zh-cn)

收起该表格展开该表格

错误名称 0x000000A5:ACPI_BIOS_ERROR
故障分析 0x000000A5错误表示ACPI高级电源选项遇到了问题。这个错误一般是因为主板BIOS不能全面支持ACPI高级电源选项引起的。如果遇到0x000000A5错误,建议到主板制造厂商的官方网站或驱动之家网站(http://www.mydrivers.com)搜索有没有更新版本的主板BIOS。如果有的话,请尝试升级主板BIOS到最新版本;如果没有更新版本的主板BIOS,请暂时禁用ACPI高级电源选项。

收起该表格展开该表格

错误名称 0x000000BE:ATTEMPTED_WRITE_TO_READONLY_MEMORY
故障分析 0x000000BE错误表示硬件设备的驱动程序试图向只读内存错误地写入数据。这个错误一般是因为硬件设备驱动程序存在BUG或安装不正确引起的。如果遇到0x000000BE错误,建议检查一下最近有没有安装或者升级过任何硬件设备驱动程序、BIOS及Firmware。如果有的话,请将最近更新过的驱动程序、BIOS及Firmware逐一还原,看看问题能否解决。

收起该表格展开该表格

错误名称 0x000000C2:BAD_POOL_CALLER
故障分析 0x000000C2错误表示内核程序或硬件设备的驱动程序试图进行错误的内存操作。这个错误一般是因为应用软件或硬件设备驱动程序存在BUG引起的。
如果遇到0x000000C2错误,建议首先检查一下最近有没有安装新的应用软件或硬件设备驱动程序。如果有的话,请将最近安装过的应用软件或驱动程序逐一卸载,看看问题能否解决;其次请使用“替换法”检测计算机的内存及主板是否工作正常。
参考资料 关于0x000000C2错误,可以参考Microsoft知识库文章KB314492:
http://support.microsoft.com/kb/314492/zh-cn (http://support.microsoft.com/kb/314492/zh-cn)

收起该表格展开该表格

错误名称 0x000000D1:DRIVER_IRQL_NOT_LESS_OR_EQUAL
故障分析 0x000000D1错误表示硬件设备的驱动程序遇到了问题。这个错误一般是因为硬件设备驱动程序存在BUG或安装不正确引起的。如果遇到0x000000D1错误,建议检查一下完整的蓝屏故障提示,看看有没有提到引起错误的具体是哪个文件,如果在蓝屏故障提示中看到某驱动程序的文件名,则表示相应的驱动程序存在BUG或安装不正确。例如,假设引起0x000000D1蓝屏故障的文件名为NV4.SYS,则可能是nVIDIA Geforce显卡驱动程序引起的问题;假设引起0x000000D1蓝屏故障的文件名为ACPI.SYS,则可能是ACPI高级电源选项驱动程序引起的问题,等等。

收起该表格展开该表格

错误名称 0x000000EA:THREAD_STUCK_IN_DEVICE_DRIVER
故障分析 0x000000EA错误表示显示驱动程序遇到了问题。这个错误一般是因为显卡或显示器的驱动程序存在BUG或安装不正确引起的。如果遇到0x000000EA错误,建议在Windows中重新安装显卡及显示器驱动程序,看看问题能否解决;如果故障依旧,请使用“替换法”检测计算机的显卡、显示器及主板的PCIE或AGP接口是否工作正常。
参考资料 关于0x000000EA错误,可以参考Microsoft知识库文章KB293078:
http://support.microsoft.com/kb/293078/zh-cn (http://support.microsoft.com/kb/293078/zh-cn)

收起该表格展开该表格

错误名称 0x000000ED:UNMOUNTABLE_BOOT_VOLUME
故障分析 0x000000ED错误表示磁盘驱动器遇到了问题。这个错误一般是因为硬盘存在磁盘错误或文件错误,硬盘数据线或电源线接触不良或与硬盘的规格不符等原因引起的。如果遇到0x000000ED错误,建议首先执行磁盘扫描程序对所有磁盘驱动器进行全面检测,看看磁盘驱动器是否存在磁盘错误或文件错误;其次请使用“替换法”检测计算机的硬盘、硬盘数据线及电源线是否工作正常,硬盘的数据线及电源线是否符合硬盘的规格。

收起该表格展开该表格

错误名称 0x000000F2:HARDWARE_INTERRUPT_STORM
故障分析 0x000000F2错误表示Windows检测到内核层出现了中断风暴(Interrupt Storm),例如某硬件设备在完成操作之后未能释放其占用的中断。这个错误一般是因为硬件设备驱动程序存在BUG引起的。如果遇到0x000000F2错误,建议检查一下最近有没有安装或升级过任何硬件设备驱动程序、BIOS及Firmware。如果有的话,请将最近更新过的驱动程序、BIOS及Firmware逐一还原,看看问题能否解决。
参考资料 关于0x000000F2错误,可以参考Microsoft知识库文章KB290101:
http://support.microsoft.com/kb/290101/zh-cn (http://support.microsoft.com/kb/290101/zh-cn)

收起该表格展开该表格

错误名称 0xC0000135:UNABLE_TO_LOCATE_DLL
故障分析 0xC0000135错误表示Windows无法定位所需的.DLL动态链接库文件。这个错误一般是因为Windows的系统文件受到了损坏或丢失,或Windows注册表受到了损坏引起的。
如果遇到0xC0000135错误,建议检查一下完整的蓝屏故障提示,看看有没有提到引起错误的具体是哪个文件,如果在蓝屏故障提示中看到某个Windows系统文件的名称,则表示这个系统文件可能已经受到了损坏或丢失,请尝试手动修复系统文件;如果蓝屏故障提示中没有显示Windows系统文件的名称,则可能是Windows注册表受到了损坏,请检查一下最近有没有对Windows注册表进行了错误的修改,如果以前曾经备份过注册表,请尝试恢复Windows注册表,如果没有备份过注册表,请重新安装Windows。

收起该表格展开该表格

错误名称 0xC000021A:STATUS_SYSTEM_PROCESS_TERMINATED
故障分析 0xC000021A错误表示用户模式子系统有所损坏,例如 WINLOGON或客户服务器运行时子系统(CSRSS)。这个错误一般是因为Windows的系统文件受到了损坏或丢失,或者Windows的安装文件夹被设置了错误的访问权限等原因引起的。
如果遇到0xC000021A错误,建议尝试以“最后一次正确的配置”方式启动 Windows;如果故障依旧,请重新安装Windows。另外某些存在BUG的安全防护类软件可能会将Windows的系统文件当作恶意程序查杀,这时将造成Windows系统文件被误删除、在启动Windows时即出现0xC000021A错误的现象。例如2007年5月,诺顿杀毒软件将安装有MS06-070更新的中文版Windows XP的系统文件NETAPI32.DLL、LSASRV.DLL误识别为病毒进行了隔离,造成Windows XP启动时即出现0xC000021A错误,Windows XP无法完成启动。在手动恢复了正确的系统文件NETAPI32.DLL及LSASRV.DLL后方可解决。