Debugging Tools for Windows

用WinDbg分析内核模式Dump文件

可以使用WinDbg来分析内核模式内存转储文件。运行WinDbg的处理器平台和Windows版本不需要和生成dump文件的机器一样。

启动WinDbg

-z 命令行选项一起启动WinDbg来分析dump文件:

windbg -y SymbolPath -i ImagePath -z DumpFileName 

-v选项(详细模式)也很有用。关于这些选项的完整列表,查看WinDbg命令行选项

如果WinDbg已经在运行并且处于静止模式,可以通过File | Open Crash Dump菜单命令或按下CTRL+D快捷键来打开dump文件。当Open Crash Dump 对话框出现后,在File name 文本框输入dump文件的全路径和名字,或使用对话框来选择合适的路径和文件名。选定需要的文件后,点击Open

可以在调试器已经运行之后使用.opendump (Open Dump File)命令后跟g (Go)命令来打开dump文件。

可以同时调试多个dump文件。可以通过在命令行中包含多个-z 开关(每个后跟一个不同的文件名),或者使用.opendump 将更多的dump文件作为调试目标。关于如何控制多目标调试会话的信息,查看调试多个目标

Dump文件一般是以.dmp.mdmp扩展名结尾的。可以使用网络共享或通用命名约定(Universal Naming Convention (UNC))的名字来命名内存dump文件。

Dump文件也经常被打包为CAB文件。如果在-z选项或.opendump 命令后指定了文件名(包含.cab扩展名),调试器可以直接从CAB中读取dump文件。但是,如果单个CAB包中存在多个dump文件,调试器一次只能读取它们中的一个。调试器不会在CAB中读取任何其他文件,即使有和dump文件关联的符号文件或其他文件。

分析Dump文件

如果分析内核Dump或小内存Dump,需要设置可执行映像路径以指向所有在崩溃时加载到内存中的可执行文件。查看可执行映像路径获取详细信息。

分析dump文件和分析其他活动调试会话类似。查看调试器命令参考小节来获得调试内核模式dump文件时可用命令的详细信息。

大多数情况下,应该首先使用!analyze。这个扩展命令可以对dump文件进行自动分析,并且常常会给出很多有用信息。

.bugcheck (Display Bug Check Data)显示错误检查代码和它的参数。查看错误检查代码参考获得关于特定错误的信息。

下面这些调试器扩展命令对于分析内核模式崩溃转储也非常有用:

!drivers

!kdext*.locks

!memusage

!vm

!errlog

!process 0 0

!process 0 7

关于从dump文件中读取特定种类信息的技术,查看从Dump文件中获取信息

Build machine: CAPEBUILD