2023年12月21日发(作者:)
WINDOWS蓝屏故障的分析
概要:
本文简要介绍怎么使用微软的工具和去分析Windows蓝屏的原因
适用:
Windows NT或者2000的 “停止”错误(也称“蓝屏”、系统崩溃、或错误检查)
更多信息:
大家可能都曾经碰到过Windows的蓝屏故障,当发生这种状况的时候,我们可以尝试使用微软的工具去定位问题发生在哪里。
下面是简单的步骤:
1, 首先打开“我的电脑”属性--〉“高级”—〉“启动和故障恢复”—〉“写入调试信息”中,选“完全内存转储”或者“核心内存转储”或者“小内存转储”,如下图。
2, 运行微软的,生成一个记录内存地址信息的文件。
是一个资源工具包实用工具(可以在资源工具包中找到或者在网上下载),您可通过它了解当前系统上运行的进程和驱动程序的信息。在所有这些用途中,最有用的信
息是在输出结束时显示的加载驱动程序的列表。您所需要做的就是从命令行运行
。可以使用以下语法,将 提供的信息输出到某个文件中:
> filename
以下示例是输出结束时显示的驱动程序列表:
ModuleName Load Addr Code Data Paged LinkDate
----------------------------------------------------------------------
80100000 270272 40064 434816 Sun May 11 00:10:39 1997
80010000 20384 2720 9344 Mon Mar 10 16:39:20 1997
80001000 20512 2272 0 Sat Apr 05 21:16:21 1997
801d7000 9824 32 15552 Mon Mar 10 16:42:27 1997
80008000 3328 0 7072 Thu Apr 24 22:27:46 1997
8000c000 7040 0 1632 Thu Apr 24 22:23:43 1997
INO_ 801df000 9152 1472 2080 Tue May 26 18:21:40 1998
801e3000 68160 5408 269632 Thu Apr 17 22:02:31 1997
f7290000 1088 672 7968 Wed Jul 17 00:31:09 1996
f72a0000 12608 32 3072 Wed Jul 17 00:31:29 1996
。
。
f9ec3000 0 0 0
f9e00000 6720 672 114368 Mon Apr 21 16:50:22 1997
77f60000 237568 20480 0 Fri Apr 11 16:38:50 1997
----------------------------------------------------------------------
Total 2377632 255040 1696384
3, 当服务器发生“蓝屏”时,会自动生成在系统目录下生成“”或者”的内存转储文件(即dump)。
4, 使用 确定内存转储信息。
,它是一种命令行实用工具(在NT或者2000光盘上有),您可以使用它来验证是否正确地创建了存储器转储文件。在命令提示窗口运行 ,使用以下语法:
下面示例列出了最有用的输出部分:
MachineImageType i386
NumberProcessors 1
BugCheckCode 0xc000021a
BugCheckParameter1 0xe1270188
BugCheckParameter2 0x00000001
BugCheckParameter3 0x00000000
BugCheckParameter4 0x00000000
ExceptionCode 0x80000003
ExceptionFlags 0x00000001
ExceptionAddress 0x8014fb84
注意,并非所有的部分都提供相同的信息。这取决于停止代码的类型。以上信息提供了停止代码 (0xc000021a)、参数(0xe1270188、0x00000001、0x00000000、0x00000000)以及
调用异常 (0x8014fb84) 的驱动程序的地址。此地址可用于确定驱动程序的名称,方法是:使用运行 (可以在资源工具包中找到)产生的输出结果。
5, 对比调用异常地址和的驱动程序地址找出异常的驱动程序。
通过使用结果中"load addr"列中显示的起始地址,可以将调用异常地址与驱动程序名称匹配起来。以 8014fb84 为例,可以确定 的加载地址最接近异常地址,而且很有可能就是调用该异常的驱动程序。可通过此信息,在 Microsoft 知识库中查找与您的情况相符的已知问题,或者得知可能造成“蓝屏”的驱动程序。
6, 根据上步的结果,找到相应的解决办法。
附:实例分析---天网防火墙造成服务器重启
故障现象:
客户有三台x255,经常会重启,最严重的时候几乎每天一到两次重启。
分析过程:
1,现场采集的System event Log的信息是
OS watchdog timeout。
- 由此判断:服务器的管理处理器检测到操作系统无响应,所以强行重启服务器;
2,升级x255所有相关的BIOS版本,但是服务器依旧死机;
3,检查Win2000的事件日志,发现有数次save dump的记录:
“计算机已经从检测错误后重新启动。检测错误: 0x0000001e (0xc0000005, 0xf21132c2,
0x00000000, 0x00000014)。 Microsoft Windows 2000 [v15.2195]。 已将转储的数据保存在:
C:。”
根据微软网站描述可以得知:停止代码0x0000001e的几个参数中有异常调用地址0xf21132c2。然后使用微软的内存分析工具()可以得到以下信息:
F2110000 14880 36256 0 Wed Oct 24 15:54:14 2001
因此,初步怀疑死机是由于一个名叫“”的设备驱动程序造成。
4,客户自行查到属于天网防火墙,把此软件卸载后服务器不再死机。
结论:
这一死机的问题可以定位为软件兼容性的问题。根据internet上找到相关的信息,相信是由于天网防火墙不兼容超线程(HT)技术所致,卸载或者升级到最新版本可以解决该问题。
总结:
1,当服务器重启时,并不一定是硬件问题。如果服务器检测到OS无响应(死机)的话,它可以自动重启的(需要安装ASR驱动程序,Automatic Server Restart)。
2,如果事件日志中有save dump的记录,那么也有可能得知异常调用地址,然后再配合来定位问题。


发布评论