如何找到该蓝屏死机的来源?如何解决?


8

我偶尔(总是在最不方便的时刻……)在Windows 7台式机上收到此BSOD:

  Problem signature:
  Problem Event Name:   BlueScreen
  OS Version:   6.1.7601.2.1.0.256.1
  Locale ID:    1033

  Additional information about the problem:
  BCCode:   124
  BCP1: 0000000000000000
  BCP2: FFFFFA8007BBB028
  BCP3: 00000000B2000040
  BCP4: 0000000000000800
  OS Version:   6_1_7601
  Service Pack: 1_0
  Product:  256_1

  Files that help describe the problem:
  C:\Windows\Minidump\010812-16578-01.dmp
  C:\Users\al\AppData\Local\Temp\WER-37500-0.sysdata.xml

尝试查找有关此问题的更多信息似乎是徒劳的,因为该文件C:\Users\al\AppData\Local\Temp\WER-37500-0.sysdata.xml不存在(该文件夹存在,但没有任何以“ WER”开头的文件),并且尝试分析minidump文件会产生以下结果:

Bug Check Code: 0x00000124
Parameter 1:    00000000`00000000
Parameter 2:    fffffa80`07bbb028
Parameter 3:    00000000`b2000040
Parameter 4:    00000000`00000800
Causing driver: hal.dll
Address:    hal.dll+12a3b
Processor:  x64
Crash address:  ntoskrnl.exe+7cc40
CPU count:  4
Major ver:  15
Minor ver:  7601
Dump size:  283,576 

和:

Filename:       ntoskrnl.exe
Addr. in Stack: ntoskrnl.exe+18d513
From addr:      fffff800`02a18000
To addr:        fffff800`03001000
Size:           0x005e9000
Timestamp:      0x4e02aaa3
Time string:    6/22/2011 9:53:23 PM
Product name:   Microsoft® Windows® Operating System
File desc:      NT Kernel & System
File ver:       6.1.7601.17640 (win7sp1_gdr.110622-1506)
Company:        Microsoft Corporation
Full path:      C:\Windows\system32\ntoskrnl.exe        

好吧,hal.dllntoskrnl.exe是操作系统的一部分,似乎没有什么我可以做的来升级那些“驱动程序”。

我知道硬件是完美的(包括BIOS中的RAM电压等),因为这个完全相同的系统可以与Ubuntu 8Ubuntu 10(三重启动配置)完美地配合使用。问题肯定在系统软件中,但是如何找到它呢?


1
如果Windows 7是开源的,我们可以为您提供帮助...
m0skit0 2012年


2
@AndrejaKo这是一个很好的资源。看起来正是我一直在寻找的东西。请重新发布作为答案,我会接受的。感谢+1。
永恒的学习者2012年

1
@Eternal Learner在SuperUser处,简单地将链接链接到答案不视为答案,除非他们希望将答案的全部内容复制到SuperUser答案中,否则它应保留为注释。造成这种情况的主要原因是链接腐烂和网站从网络空间消失。第二个原因是SuperUser不是论坛。
摩押

Answers:


4
  1. 安装Windows调试工具
  2. 安装后,从开始菜单中打开WinDbg。
  3. 单击文件>符号文件路径,然后输入 (用您选择的路径替换C:\ SymbolCache)SRVC:\SymbolCachehttp://msdl.microsoft.com/download/symbols
  4. 单击文件>打开Crashdump,然后打开%SystemRoot%(通常为C:\ WINDOWS或C:\ WINNT)中的memory.dmp文件;如果禁用了完全转储,则打开%SystemRoot%\ Minidump中的最新文件。
  5. 令人讨厌的驱动程序将在下面列出,类似于: Probably caused by : usbhub.sys ( usbhub!UsbhTrapFatalTimeout_x9f+28 ),但是您可以单击!analyze -v链接以获取详细的堆栈跟踪。

这对驱动程序开发人员有益,对管理员不利。
永恒的学习者2012年

@EternalLearner但这向您显示了BSOD源,这是一件好事。
kinokijuf 2012年

是的,这是一件好事,但是我已经从中获取了所有信息BlueScreenView。的唯一优点!analyze -v是能够显示我拥有的源代码,并且由于我不是的开发人员ntoskrnl.exe,所以它对我没有帮助。除了事实,它令人it肿,进一步损害了系统的稳定性。仅在开发驱动程序时才需要安装它。
永恒的学习者

@EternalLearner然后,恐怕无法获得更多信息。
kinokijuf 2012年

2

一个更简单的方法是使用BlueScreenView。如果查看“堆栈中的地址”列,则可以看到有问题的呼叫最初来自何处。这是此列中具有条目的最后一行。

使用驱动程序文件名,您可以回溯其所属的供应商/应用程序/设备,因此很有可能找到罪魁祸首。


1
BlueScreenView正是我在问题中发布信息的地方。回溯停止于我最初发布的内容:ntoskrnl.exe+18d513。到目前为止,@ AndrejaKo发表的评论是最好的答案。
永恒的学习者2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.