Инструментальное средство LiveKd
LiveKd является свободно распространяемым средством, предлагаемым на сайте Sysinternals. Это средство позволяет использовать только что рассмотренные стандартные отладчики ядра компании Microsoft для исследования запущенной системы без загрузки этой системы в режиме отладки.
Этот подход может пригодиться, когда причины возникновения проблем нужно установить на машине, не запущенной в режиме отладки, — иногда встречаются такие проблемы, которые очень трудно воспроизвести, а перезагрузка с включенным режимом отладки может не показать наличия какой-либо ошибки.
Средство LiveKd запускается точно так же, как WinDbg или Kd, и передает выбранному вами отладчику любые ключи, указанные в командной строке. По умолчанию LiveKd запускает отладчик ядра, работающий в окне командной строки — Kd. Чтобы это средство запустило WinDbg, нужно указать ключ –w. Для вывода файлов справки, касающихся ключей LiveKd, нужно указать ключ –?.
LiveKd представляет отладчику смоделированный файл аварийного дампа, поэтому в LiveKd можно выполнять любые операции, поддерживаемые в отношении аварийного дампа. Поскольку при моделировании аварийного дампа средство LiveKd полагается на физическую память, отладчик ядра может попасть в такую ситуацию, при которой структуры данных находятся в центре области, изменяемой системой, и теряют свою согласованность.
При каждом запуске отладчика он начинает со свежего представления состояния системы. Если нужно обновить снимок состояния (snapshot), выйдите из отладчика (с помощью команды q), и LiveKd выведет запрос на его повторный запуск. Если отладчик входит в цикл вывода на печать, нажмите сочетание клавиш Ctrl+C для прерывания вывода и выхода из отладчика. Если отладчик завис, нажмите сочетание клавиш Ctrl+Break, чтобы остановить процесс отладки. LiveKd выведет запрос на повторный запуск отладчика.