当您在运行Microsoft Windows 2000/XP/Server 2003、Microsoft Windows Vista/Server 2008、Microsoft Windows 7操作系统时,Windows可能会突然停止正常运行,并显示一副含有下述字样的蓝色背景错误信息画面: A problem has been detected and Windows has been shut down to prevent damage to your computer. …… 如果Windows因系统设置故障、软件故障、硬件故障、驱动程序故障、网络故障等各种类型的故障产生了严重的错误,引起Windows无法继续维持正常运行,Windows出于避免用户数据丢失及损坏计算机的考虑,将自动停止运行并显示“蓝屏”错误信息。 在默认的系统设置中,Windows 2000遇到“蓝屏”故障后“蓝屏”错误信息将长时间停留在显示屏,直到您关闭或重新启动计算机;Windows XP及后续版本的Windows遇到“蓝屏”故障后“蓝屏”错误信息将在短时间显示之后自动重新启动计算机。 “ 蓝屏”故障发生后是否自动重新启动计算机取决于“启动与故障恢复”设置。您可以在“控制面板”中打开“系统”属性,切换至“高级”选项卡(如果是 Windows Vista及Windows 7,请在“系统”属性左上方的工具栏中选择“高级系统设置”,确认用户帐户控制(UAC)安全提示,然后再切换至“高级 ”选项卡),在“高级”选项卡中打开“启动与故障恢复”。您可以在“启动与故障恢复”的选项中找到“自动重新启动”复选框,如果此复选框没有选 中,Windows遇到“蓝屏”故障后“蓝屏”错误信息就将长时间停留在显示屏(Windows 2000的默认设置);如果此复选框被选中,“蓝屏”错误信息就将在短时间显示之后自动重新启动计算机(Windows XP及后续版本的Windows的默认设置)。 由于各种系统设置故障、软件故障、硬件故障、驱动程序故障、网络故障等均有可能引起Windows“蓝屏”故障,所以您需要通过“蓝屏”错误信息 提供的故障代码(Technical Information)、或通过Debugging Tools for Windows (http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx) 分析Windows在“蓝屏”故障时自动保存的内存转储文件(Crash Dump File)判断引起“蓝屏”的大致原因,确定故障方向后,再针对具体的故障部分进行细致的排查解决。Microsoft不对由第三方软件、盗版软件、硬 件、驱动程序、恶意程序等引起的“蓝屏”故障提供技术支持。 方法1:通过“蓝屏”错误信息提供的故障代码(Technical Information)排查 “蓝屏”故障信息会在屏幕的底部显示此蓝屏的故障代码(Technical Information),代码的格式一般为0x000000XX,例如0x0000000A、0x000000D1等。每种不同的代码均代表不同类型的 故障。您可以以故障代码为关键词在Microsoft知识库(KB) (http://support.microsoft.com/) 、microsoft.com或其它搜索引擎(例如Bing.com)中搜索“蓝屏”故障的相关 信息。例如,您可以在Microsoft知识库(KB)中以0x0000007B为关键词搜索到关于0x0000007B故障的知识库文章 KB324103 (http://support.microsoft.com/kb/324103/zh-cn/ ) 。 方法2:通过Debugging Tools分析“蓝屏”内存转储文件(Crash Dump File)排查 为了便于排查“蓝屏”故障的原因,Windows提供了在“蓝屏”故障发生时自动将内存数据保存为内存转储文件(Crash Dump File)的功能,以便您通过分析内存转储文件排查“蓝屏”故障原因。 您可以在“控制面板”中打开“系统”属性,切换至“高级”选项卡(如果是Windows Vista及以上版本的Windows请在左上方的工具栏中选择“高级系统设置”,确认用户帐户控制(UAC)安全提示,然后再切换至“高级”选项卡), 在“高级”选项卡中打开“启动与故障恢复”。您可以在“启动与故障恢复”选项中找到“写入调试信息”的下拉菜单,在下拉菜单中将“无”修改为“小内存转储 (64KB)”、“核心内存转储”或“完全内存转储”,即可在发生“蓝屏”故障时自动保存内存转储文件。 内存转储文件是一种扩展名 为 .DMP 的文件。其中,“小内存转储”文件保存在 WindowsMinidump 文件夹、文件大小为 64KB,它只记录发生“蓝屏”故障时的关键信息;“核心内存转储”与“完全内存转储”文件则保存在 Windows 文件夹中,文件名为 MEMORY.DMP,它们分别记录有发生“蓝屏”故障时的核心内存信息或完整的内存信息。为了节省硬盘空间,通常您可以选择“小内存转储 (64KB)”。 分析内存转储文件可以使用Debugging Tools for Windows (http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx) ,您可以在Microsoft网站如下地址免费下载: http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx (http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx)
通过Debugging Tools分析“蓝屏”故障案例: 曾经有一台 Windows XP 计算机经 常发生错误代码为 0x0000007F 的“蓝屏”故障,原因未知。为了调查故障原因,我们在 Windows XP 中设置了保存“小内存转储文件(64KB)”。当计算机再次发生了 0x0000007F 蓝屏故障后,我们在重新启动 Windows 后,使用 Debugging Tools 打开了这台计算机保存于 WindowsMinidump 文件夹中的 .DMP 内存转储文件,Debugging Tools 经过自动分析后弹出了分析报告,报告此错误“Probably caused by TM_CFW.SYS(可能由 TM_CFW.SYS 引起)”。原来,TM_CFW.SYS 位于 %SystemRoot%system32drivers 文件夹,它是趋势的防火墙程序,用于将趋势防火墙以系统服务的形式随 Windows 启动一同加载。经过我们回忆,这台计算机正是在修改趋势防火墙程序的设置后经常出现 0x0000007F “蓝屏”故障。因此,趋势防火墙很可能出现了设置不当的问题。为了证实这一猜想,我们在 Windows XP 中通过“控制面板”中的“添加删除程序”卸载了趋势防火墙,然后按照默认设置重新安装了,果然问题得以解决。 附录:28个常见的“蓝屏”故障代码的排查信息 错误名称 0x0000000A:IRQL_NOT_LESS_OR_EQUAL 故障分析 0x0000000A 错误表示在内核模式中存在以过高的进程内部请求级别(IRQL)访问其没有权限访问的内存地址。这个错误一般是因为硬件设备的驱动程序存在BUG,某些软 件或硬件与Windows不兼容引起的。如果遇到0x0000000A错误,建议尝试以“最后一次正确的配置”方式启动 Windows,并检查一下最近有没有安装或升级过任何系统更新、硬件设备的驱动程序、BIOS、Firmware及应用软件等。如果有的话,请将最近更 新过的应用软件及硬件设备逐一卸载、恢复到之前可以稳定运行的版本,看看问题能否解决。 错误名称 0x0000001A:MEMORY_MANAGEMENT 参考资料 关于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%system32DriversFASTFAT.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%system32DriversNTFS.SYS是否受到了损坏或丢失。
错误名称 0x0000002E:DATA_BUS_ERROR 参考资料 关于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错误,可以参考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错误,可以参考Microsoft知识库文章KB315266: http://support.microsoft.com/kb/315266/zh-cn (http://support.microsoft.com/kb/315266/zh-cn) 错误名称 0x0000007A:KERNEL_DATA_INPAGE_ERROR 错误名称 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错误,可以参考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错误,可以参考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错误,可以参考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后方可解决。
(责任编辑:admin) |