Как отправить сообщения трассировки в отладчик ядра?

Для перенаправления сообщений трассировки в отладчик в режиме ядра вы можете использовать несколько методов. Здесь обсуждаются некоторые из них.

Вы можете перенаправить сообщения трассировки в KD или в Windbg, в зависимости от того, что подключено. Отладчик должен быть подключен через COM-порт с отладочным кабелем (null-модемом) или через порт 1394 (FireWire) с кабелем IEEE 1394. Вы не можете отправлять сообщения трассировки в такие другие отладчики ядра, как NTSD.

Чтобы отобразить сообщения трассировки в отладчике, wmitrace.dll и traceprt.dll должны находиться в пути поиска отладчика на хост-компьютере. Эти библиотеки DLL включены в средства отладки для Windows Кроме того, чтобы отладчик мог найти файлы формата сообщений трассировки (.tmf), для сообщений трассировки, файлы TMF должны находиться в пути поиска отладчика на хост-компьютере. Чтобы задать путь поиска отладчика, используйте расширение специализированного отладчика !wmitrace.searchpath или задайте значение переменной среды %TRACE_FORMAT_SEARCH_PATH%.

Дополнительные сведения см. в !wmitrace в Средства отладки для Windows.

Logman

Используйте следующую команду Logman для перенаправления сообщений трассировки в отладчик в режиме ядра:

logman start TraceSession -ets -mode KernelFilter -bs 3

Параметр -ets запускает сеанс трассировки событий, который не контролируется службой журналов производительности и оповещений. Параметр -mode активирует дополнительные параметры, включая параметр KernelFilter.

Параметр -bs задает размер буфера для сеанса трассировки 3 КБ, максимальный размер буфера для отладчика. Если этот параметр не указан, сеанс отладчика не будет работать должным образом.

Logman включен в Windows XP и более поздних версиях Windows.

файл журнала трассировки

Используйте следующую команду Tracelog для перенаправления сообщений трассировки в отладчик режима ядра.

tracelog -start MyTrace -guid MyProvider.ctl -rt -kd

Параметр -guid указывает поставщика трассировки. Параметр -rt указывает сеанс трассировки в режиме реального времени. Параметр -kd перенаправляет сообщения трассировки в отладчик ядра и задает максимальный размер буфера в 3 КБ, максимальное значение для отладчика.

Для примера см. Пример 16: Просмотр сообщений трассировки в отладчике.

Tracelog находится в подкаталоге tools\tracing\<Platform> WDK, где <Platform> является одной из i386, amd64 или ia64.

TraceView

TraceView имеет графический пользовательский интерфейс.

При создании сеанса трассировки можно перенаправить сообщения трассировки в отладчик ядра. На странице параметры сеанса щелкните расширенные параметры сеанса журнала, щелкните вкладку параметры параметров сеанса журнала, а затем установите значение параметра Windbg на TRUE. Этот параметр нельзя изменить во время выполнения сеанса трассировки.

TraceView находится в подкаталоге tools\tracing\<Platform> WDK, где <Platform> представляет собой либо i386, amd64, либо ia64.