Fork me on GitHub

一次真实的蓝屏分析 ntkrnlmp.exe

故事背景:

话说我一直都是远程公司的电脑,在我晚上11点敲代码敲得正爽的时候,被远程的主机挂掉了,毫无征兆的挂掉了,我特么还好有闲着没事就ctrl + s保存代码的习惯,要不然白敲了那么久,我以为是公司停电或者是断网,我第二天也就是今天,到了公司,摸了下电脑,发现好烫的板子,再看,哎呦,关机了。看来昨天的故障不少,下意识的进到了C:\Windows\Minidump\1下面看看有木有蓝屏down机的dmp文件,还真发现了,于是赶紧架上winDbg高射炮分析一下蓝屏代码。

俗话说,写代码的不一定会修电脑,但是摸索的心态还是要有的,毕竟离职前,这台电脑和自己上战场打仗不是。那么我开始分析。

Microsoft (R) Windows Debugger Version 6.12.0002.633 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.


Loading Dump File [C:\Windows\Minidump\120815-14492-01.dmp]
Mini Kernel Dump File: Only registers and stack trace are available

Symbol search path is: SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols
Executable search path is:
Windows 7 Kernel Version 7601 (Service Pack 1) MP (4 procs) Free x64
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 7601.19045.amd64fre.win7sp1_gdr.151019-1254
Machine Name:
Kernel base = 0xfffff800`0444d000 PsLoadedModuleList = 0xfffff800`04694730
Debug session time: Mon Dec 7 23:43:47.711 2015 (UTC + 8:00)
System Uptime: 3 days 13:39:02.569
Loading Kernel Symbols
...............................................................
................................................................
............................................
Loading User Symbols
Loading unloaded module list
................
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 3B, {c0000005, fffff8000478dea2, fffff8800e7ea5d0, 0}

Probably caused by : ntkrnlmp.exe ( nt!CmpKcbCacheLookup+252 )

Followup: MachineOwner
---------

WinDbg分析结果

1.首先我看到

2.然后我开始命令跟进,输入!analyze -v

3.最后再执行一个命令!process ,确认一下是不是svchost.exe所为,svchost.exe这个进程太多了,跟到这里基本上不用往下跟了。估计是那个网络问题引起了网卡挂掉,然后硬件挂掉。

总结一下winDbg常用的命令吧

  1. !analyze -v 立即查看是哪个程序搞的死机/蓝屏/重启
  2. !process 确定是哪个程序引起的第1点挂掉
  3. lmvm nt 靠这个我也不知道是干嘛的,反正运行了之后,和第2点一样

基本上可以看到了这次挂掉的原因是因为ntkrnlmp.exe造成的,这个进程我百度了一下,发现是和硬件交互的必备进程,由此可以轻松的猜测到逗比的电脑硬件挂了,估计是显卡太热,或者硬盘太热,也可能是某个svchost.exe交互太频繁导致了内存挂机,比如我开了Idea,直接占用了2G的内存,而无法释放。

落雨
http://ae6623.cn
2015年12月8日

posted @ 2015-12-08 17:00  _落雨  阅读(56349)  评论(0编辑  收藏  举报