用电脑 最令人头疼的就是莫名其妙的死机 ... 你也不知道碰了它哪根神经 就挂了 ...
好在Windows会自动保存病例 在它挂掉的时候 会自动将当时内存中的情景留一个备份 (dump文件) 用来向人们描述自己是如何遭受不测的
...
有了这个文件(通常保存在%windir%\Minidump目录下) 就便于了解真相 ...
很多人喜欢汇报类似这样的内容(但大多数还没有我提供的完整):
================================================================
产品
Windows
问题
Shut down unexpectedly
日期
2008/6/12 2:21
状态
Solution Available
问题签名:
问题事件名称: BlueScreen
OS 版本: 6.0.6001.2.1.0.256.1
区域设置 ID: 2052
用于描述问题的文件 (有些文件可能不存在了)
Mini061208-01.dmp
有关该问题的其他信息:
BCCode: c2
BCP1: 00000007
BCP2: 0000110B
BCP3: 08490000
BCP4: 84F00008
OS Version: 6_0_6001
Service Pack: 1_0
Product: 256_1
Server information: 771d58a9-0069-4a91-921d-bab12a4fa046
=====================================================================
从以上内容能看出什么呢 就算是微软的工程师 或者MVP也速手无策... 因为这些信息过于笼统 你根本不知道到底是哪个程序或文件导致
系统崩溃的 ...
相当一部分人(也包括我) 通过在网上搜索相应的 BCCode [就是 Bug Check Code 的缩写] 来寻求解决方案 对于已经有了解决方案的案
例来说 也不失为一种应急策略 ... 但我要说 这不一定是最有效的 ...
打个比方 如果医生都用"望诊"来医治患者 恐怕没有多少能康复的 貌似一样的症状不见得发病机理是一致的 ... BCCode 算然能表示一定
的含义 但并不是全部 ... 要具体问题具体分析 ...
下面我就以我遇到的BSOD [就是上面的问题简述]做一次诊断 ...
所需要的工具: WinDbg
下载地址: http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx
WinDbg 的部分分析结果:
========================================================================================
Microsoft (R) Windows Debugger Version 6.9.0003.113 X86
Copyright © Microsoft Corporation. All rights reserved.
Loading Dump File [C:\Windows\Minidump\Mini061208-01.dmp]
Mini Kernel Dump File: Only registers and stack trace are available
Symbol search path is: SRV*e:\websymbols*http://msdl.microsoft.com/download/symbols
Executable search path is: C:\Windows\System32\drivers\klim6.sys
Windows Server 2008 Kernel Version 6001 (Service Pack 1) MP (2 procs) Free x86 compatible
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 6001.18000.x86fre.longhorn_rtm.080118-1840
Kernel base = 0x82007000 PsLoadedModuleList = 0x82114930
Debug session time: Thu Jun 12 02:15:23.121 2008 (GMT+8)
System Uptime: 0 days 6:31:16.214
Loading Kernel Symbols
.............................................................................................................................
.................................
Loading User Symbols
Loading unloaded module list
......
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************
Use !analyze -v to get detailed debugging information.
BugCheck C2, {7, 110b, 8490000, 84f00008}
Unable to load p_w_picpath klim6.sys, Win32 error 0n2
*** WARNING: Unable to verify timestamp for klim6.sys
*** ERROR: Module load completed but symbols could not be loaded for klim6.sys
GetPointerFromAddress: unable to read from 821336d8
Unable to read MiSystemVaType memory at 821142e0
...............................................................................
Probably caused by : klim6.sys ( klim6+1eb0 )
Followup: MachineOwner
---------