我是靠谱客的博主 活力自行车,最近开发中收集的这篇文章主要介绍WinDbg蓝屏分析入门一、WinDbg介绍二、符号表设置三、常用快捷键四、蓝屏信息分析五、学习参考,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、WinDbg介绍

       WinDbg,英文全称为Windows Debugger,Windows调试程序。

       WinDbg是Windows平台下面的一款调试工具,通过dmp文件对蓝屏、程序崩溃原因进行分析,定位问题根源。官方描述WinDbg功能为以下三点:

  • 调试内核模式和用户模式代码
  • 分析故障转储
  • 在代码执行时检查 CPU 寄存器。

        微软官方文档学习资料:https://docs.microsoft.com/zh-cn/windows-hardware/drivers/debugger/

        WinDbg下载地址:https://developer.microsoft.com/zh-cn/windows/downloads/windows-10-sdk/

二、符号表设置

        符号表是WinDbg的关键数据库,没有符号表,WinDbg无法分析出更多的问题的原因,符号表设置方法如下:

  • 首先,Ctrl+S弹出符号表设置窗口
  • 然后,输入:SRV*C:Symbols*http://msdl.microsoft.com/download/symbols,点击OK

三、常用快捷键

       1、打开dmp文件:Ctrl+D

       2、关闭上一个dmp分析记录:Shift+F5

四、蓝屏信息分析

1、打开蓝屏dmp文件

      打开蓝屏dmp文件后,显示参数System Uptime表示系统运行时间。从该参数可以得知蓝屏出现的时间,从而进行蓝屏定位,例如小于1分钟为开机蓝屏,大于1分钟为上机或者玩的过程中出现问题。如下图,在系统运行后的47分钟3秒167毫秒出现了蓝屏。

2、使用!analyze -v进一步分析

      有时,在打开蓝屏dmp文件之后,会显示一个参数:Probaly caused by,表示可能导致蓝屏的驱动文件。如果没有这个参数,需要使用命令!analyze -v进行进一步分析。下图为执行命令!analyze -v之后显示的一个界面:

        第一个部分表示蓝屏代码,这里的蓝屏代码为ea。

        第二个部分表示WinDbg给的一些分析建议。

        第三个部分表示蓝屏代码ea的四个参数。

        这里通过点击help--Window,或者键盘F1进入帮助页面,查看蓝屏代码对应的参考信息,如下图。

       关闭debugger帮助界面,继续回到WinDbg调试,通过鼠标下滑可以查看触发蓝屏相关的应用程序以及堆栈信息,如下图:

       第一个部分表示蓝屏代码以及与之相关的四个参数。

       第二个部分表示触发蓝屏的进程。触发蓝屏的进程文件可能是exe文件,也可能是dat文件或者dll文件,触发蓝屏文件的类型并不固定。但是应用程序并不是导致蓝屏的真正原因,因为用户态程序不会导致蓝屏,只有内核态程序才会导致蓝屏。

       第三个部分表示堆栈信息。栈信息反映了错误发生前堆栈中的函数调用情况,从下至上进行调用。如上图,nt中的KeBugCheckEx函数被dxgkrnl中的函数TdrTimedOperationBugcheckOnTimeout调用,该函数又被dxgkrnl中的TdrTimedOperationDelay函数调用,然后TdrTimedOperationDelay函数被amdkmdag函数调用。通过这里的堆栈,分析导致蓝屏的主要原因。

       另外,在堆栈信息下面有一个参数是IMAGE_NAME,表示触发蓝屏的驱动程序。如下图,触发该蓝屏的相关驱动为dxgkrnl.sys。在这里,程序FMSIScan.exe的运行触发了dxgkrnl驱动程序的一个bug,发生蓝屏。判断该蓝屏现象背后是一个驱动bug之后,通过驱动dxgkrnl.sys所属平台或者所属供应商,从而推动蓝屏bug的修复。

五、学习参考

1、CSDN《系统蓝屏日志DMP文件分析工具WinDbg及教程》

2、CSDN《WinDBG工具配置及蓝屏dump简单分析》

3、CSDN《Windows蓝屏DMP文件分析》

4、《微软官方WinDbg文档参考》

最后

以上就是活力自行车为你收集整理的WinDbg蓝屏分析入门一、WinDbg介绍二、符号表设置三、常用快捷键四、蓝屏信息分析五、学习参考的全部内容,希望文章能够帮你解决WinDbg蓝屏分析入门一、WinDbg介绍二、符号表设置三、常用快捷键四、蓝屏信息分析五、学习参考所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部