使目标计算机崩溃和重新启动目标计算机

执行内核调试时,可以通过发出 .crash(强制系统崩溃)命令,导致目标计算机停止响应(即崩溃bug 检查)。 此命令立即导致目标计算机停止响应。 如果已启用故障转储,调试器将写入内核模式转储文件。 (有关这些文件的详细信息,请参阅 创建内核模式转储文件

若要重启目标计算机,请使用 .reboot (重新启动目标计算机) 命令。

如果希望目标计算机创建故障转储文件,然后重新启动,则应发出 .crash 命令,然后发出 .reboot 命令。 如果只想重启, 则不需要 .crash 命令。

在启动过程的早期阶段,主机与目标计算机之间的连接将丢失。 调试器不提供有关目标计算机的信息。

连接断开后,调试器会关闭所有符号文件并卸载所有调试器扩展。 此时,如果运行的是 KD 或 CDB,则所有断点都将丢失。 在 WinDbg 中,可以保存当前工作区。 此操作保存所有断点。

如果此时想要结束调试会话,请使用 Ctrl+B 命令(在 KD 中),或在“文件”菜单上单击“退出(在 WinDbg 中)。

如果未退出调试器,则完成足够的启动过程后,连接将重新建立。 此时会重新加载符号和扩展。 如果运行的是 WinDbg,则会重新加载内核模式工作区。

可以指示调试器在重启过程中在两次可能的时间自动闯入目标计算机:

  • 将第一个内核模块加载到内存中时

  • 内核初始化时

若要在第一个内核模块加载时设置自动断点,请使用 -d 命令行选项

还可以在调试器运行后更改中断状态:

  • 控制初始模块加载和内核初始化断点,如所有异常和事件。 当发生这些事件或忽略这些事件时,可以进入调试器。 还可以在命中这些断点时自动执行指定的命令。 有关详细信息,请参阅控制异常和事件

  • KD 中使用 Ctrl+K 快捷键、WinDbg 中的 Ctrl+Alt+K 快捷键和调试 |内核连接 |WinDbg 中的“循环初始中断”命令可更改中断状态。 每次使用这些命令时,调试器都会切换三种状态:没有自动中断、内核初始化时中断,在第一个内核模块加载时中断。 此方法不能同时激活两个自动断点。