Поделиться через


Сбой и перезагрузка целевого компьютера

При отладке ядра можно привести к тому, что целевой компьютер перестанет отвечать на запросы (т. е. аварийное завершение илипроверка ошибок), выполнив команду .crash (Force System Crash). Эта команда немедленно приводит к тому, что целевой компьютер перестает отвечать на запросы. Если вы включили аварийные дампы, отладчик записывает файл дампа в режиме ядра. (Дополнительные сведения об этих файлах см. в статье Создание файла дампа Kernel-Mode.)

Чтобы перезагрузить целевой компьютер, используйте команду .reboot (Reboot Target Computer).

Если требуется, чтобы на целевом компьютере был создан файл аварийного дампа, а затем перезапущен, следует выполнить команду .crash , а затем команду .reboot . Если требуется только перезапуск, команда .crash не требуется.

На ранних этапах процесса загрузки связь между главным и целевым компьютером теряется. Отладчик не может получить сведения о целевом компьютере.

После разрыва соединения отладчик закрывает все файлы символов и выгружает все расширения отладчика. На этом этапе все точки останова теряются, если вы используете KD или CDB. В WinDbg можно сохранить текущую рабочую область. Это действие сохраняет все точки останова.

Если вы хотите завершить сеанс отладки на этом этапе, используйте команду CTRL+B (в KD) или выберите выход в меню Файл (в WinDbg).

Если не выйти из отладчика, подключение будет восстановлено после завершения достаточного объема процесса загрузки. На этом этапе символы и расширения перезагружаются. Если вы используете WinDbg, рабочая область в режиме ядра перезагружается.

Вы можете указать отладчику, что он автоматически врывается на целевой компьютер во время процесса перезагрузки в два возможных раза:

  • При загрузке первого модуля ядра в память

  • При инициализации ядра

Чтобы задать автоматическую точку останова при загрузке первого модуля ядра, используйте параметр командной строки-d.

Состояние останова также можно изменить после запуска отладчика:

  • Управляйте начальной загрузкой модуля и точками останова инициализации ядра, например всеми исключениями и событиями. При возникновении этих событий можно врезаться в отладчик или игнорировать их. Вы также можете автоматически выполнить указанную команду при достижении этих точек останова. Дополнительные сведения см. в разделе Управление исключениями и событиями.

  • Используйте сочетания клавиш CTRL+K в KD, сочетания клавиш CTRL+ALT+K в WinDbg и Отладка | Подключение к ядру | Команда Cycle Initial Break в WinDbg для изменения состояния прерывания. Каждый раз, когда вы используете эти команды, отладчик переключается между тремя состояниями: без автоматического прерывания, при инициализации ядра и при первой загрузке модуля ядра. Этот метод не может активировать обе автоматические точки останова одновременно.