使用 WinDbg 分析内核模式转储文件
可以使用 WinDbg 分析内核模式内存转储文件。
启动 WinDbg
转储文件通常以扩展名 .dmp 或 .mdmp 结尾。 可以将网络共享或通用命名约定文件名用于内存转储文件。 用于创建转储文件的处理器或 Windows 版本不需要与运行 KD 的平台匹配。
若要分析转储文件,请启动 WinDbg 并将 -z 命令行选项包括在内:
windbg -y <SymbolPath> -i <ImagePath> -z <DumpFileName>
-v 选项(详细模式)也很有用。 有关选项的完整列表,请参阅 WinDbg 命令行选项。
如果 WinDbg 已在休眠模式下运行,请通过选择 File | Open Crash Dump 菜单命令或按 Ctrl+D 打开故障转储。 出现打开故障转储对话框时,在文件名中输入故障转储文件的完整路径和名称,或使用对话框选择路径和文件名。 指定文件后,选择打开。
或在调试器运行后使用 .opendump (打开转储文件)命令打开转储文件,后跟 g (Go) 命令。
您可以同时调试多个转储文件。 在命令行中包含多个 -z 开关,每个开关后跟不同的文件名,或运行 .opendump 以添加其他转储文件作为调试器目标。 有关如何控制多目标会话的详细信息,请参阅调试多个目标。
转储文件可以打包到 CAB 文件中。 如果在 -z 选项后指定文件名(包括 .cab 文件扩展名),或将其作为 .opendump 命令的参数,调试器将直接读取转储文件。
如果单个 CAB 文件中存储了多个转储文件,调试器将只读取其中一个转储文件。 即使存在符号文件或与转储文件关联的其他文件,调试器也不会从 CAB 读取任何其他文件。
分析转储文件
若要分析内核内存转储或小型内存转储,可能需要设置可执行映像路径,指向崩溃期间内存中的可执行文件。
转储文件分析类似于实时调试会话的分析。 有关可用于在内核模式下调试转储文件的命令详情,请参阅调试器命令参考章节。
在大多数情况下,使用 !analyze 开始。 此扩展命令对转储文件执行自动分析,这通常提供有用的信息。
.bugcheck(显示 Bug 检查数据)命令显示 Bug 检查代码及其参数。 有关特定错误的信息,请参阅 Bug 检查代码参考。
以下调试器扩展对于分析内核模式故障转储特别有用:
有关从转储文件读取特定类型信息的技术,请参阅 从转储文件中提取信息。