Windows Driver Loader? - PullRequest
       8

Windows Driver Loader?

1 голос
/ 15 июля 2009

Отладка сообщений от драйверов ядра Windows?

В настоящее время я использую DbgPrint и DebugView, но это официальный способ наблюдения за поведением драйверов? Кто-нибудь знает, если и где файлы журнала ядра скрыты в системе Windows (например, / var / log и dmesg only windows-ish?)

Я со своей стороны в настоящее время использую Vista, но, вероятно, существует какой-то стандартный или скрытый способ ведения журнала, который намного старше, но все еще действует.

Ответы [ 3 ]

1 голос
/ 15 июля 2009

Существует API для журнала событий в режиме ядра.

См. IoAllocateErrorLogEntry и IoWriteErrorLogEntry .

Я не знаю, медленные они или быстрые.

Вы должны использовать DbgPrint для вызовов трассировки и использовать WinDbg из инструментов отладки ядра Windows для отладки ваших драйверов. WinDbg - действительно хороший отладчик, который вам очень поможет.

PS: это никак не скрыто. Подробности смотрите в документации WDK.

1 голос
/ 18 января 2010

Использовать трассировку программного обеспечения WPP. См. «Отслеживание и диагностика драйверов WDF» .

WPP основан на трассировке событий для Windows (ETW), средства уровня ядра, которое регистрирует сообщения трассировки как в режиме ядра, так и в режиме пользователя.

WPP имеет несколько преимуществ перед операторами отладочной печати:

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

Для сообщений об ошибках, предназначенных для конечного пользователя, используйте Журнал событий.

1 голос
/ 15 июля 2009

Эквивалентом / var / log является журнал событий, но вы не можете использовать его для драйверов, потому что это будет слишком медленно.

...