Средства тестирования драйверов
Общие сведения о технологии средств тестирования драйверов.
Для разработки средств тестирования драйверов вам потребуются следующие заголовки:
Руководство по программированию см. в статье Средства тестирования драйверов.
Макросы
Заголовок | Описание |
---|---|
WppRecorderНастройка макроса | Метод WppRecorderConfigure включает или отключает журнал по умолчанию, в который выполняется печать WPP. |
Макрос WppRecorderDumpLiveDriverData | Метод WppRecorderDumpLiveDriverData получает буфер, связанный с указанным журналом inflight trace Recorder. |
Макрос WppRecorderGetTriageInfo | The WppRecorderGetTriageInfo. |
Макрос WppRecorderLinkCounters | The WppRecorderLinkCounters. |
WppRecorderLogCreate macro | Метод WppRecorderLogCreate создает буфер, содержащий журнал средства записи. |
Макрос WppRecorderLogDelete | Метод WppRecorderLogDelete удаляет указанный журнал средства записи. |
Макрос WppRecorderLogSetIdentifier | Метод WppRecorderLogSetIdentifier задает идентификатор строки для журнала средства записи. |
Перечисления
FAULT_INFORMATION_ARCH Определяет значения для типа архитектуры системы. |
FAULT_INFORMATION_ARM64_TYPE Определяет значения для типа сбоя. |
PCW_CALLBACK_TYPE Перечисление PCW_CALLBACK_TYPE определяет тип уведомления, отправляемого зарегистрированным поставщиком набора счетчиков. Поставщик передает указатель на это перечисление в качестве параметра функции PcwCallback. |
WPP_RECORDER_TRI_STATE Тип перечисления WPP_RECORDER_TRI_STATE определяет три значения, которые WPP использует для некоторых элементов структуры и параметров функции. |
Функции
ASSERTMSG ASSERTMSG проверяет выражение. Если выражение имеет значение false, оно переходит в отладчик ядра и отправляет ему указанное сообщение. |
DbgBreakPoint Подпрограмма DbgBreakPoint прерывается в отладчике ядра. |
DbgBreakPointWithStatus Подпрограмма DbgBreakPointWithStatus прерывает работу отладчика ядра и отправляет отладчику значение Status. |
DbgPrint Подпрограмма DbgPrint отправляет сообщение отладчику ядра. |
DbgPrintEx Подпрограмма DbgPrintEx отправляет строку отладчику ядра при выполнении указанных условий. |
DbgPrompt Подпрограмма DbgPrompt отображает указанную вызывающим пользователем строку запроса пользователя на устройстве отображения отладчика ядра и получает строку ответа пользователя. |
EtwActivityIdControl Функция EtwActivityIdControl создает, запрашивает и задает идентификатор текущего действия. |
ETWENABLECALLBACK Функция EtwEnableCallback — это дополнительная функция обратного вызова, предоставляемая драйвером, которая используется для получения уведомлений о включении или отключении. |
EtwEventEnabled Функция EtwEventEnabled проверяет, включено ли событие. |
EtwProviderEnabled Функция EtwProviderEnabled проверяет, включен ли поставщик для ведения журнала событий на указанном уровне и ключевое слово. |
EtwRegister Функция EtwRegister регистрирует поставщик событий и должна быть вызвана, прежде чем поставщик сможет начать трассировку. |
EtwUnregister Функция EtwUnregister отменяет регистрацию поставщика событий и должна быть вызвана до выхода поставщика. |
EtwWrite Функция EtwWrite — это функция трассировки для публикации событий в коде драйвера в режиме ядра. |
EtwWriteEx Функция EtwWriteEx — это функция трассировки для публикации событий, поддерживающих фильтрацию в коде драйвера в режиме ядра. |
EtwWriteString Функция EventWriteString — это функция трассировки, которую можно использовать, когда сложные данные не требуются. Эта функция аналогична инструкции debug print. |
EtwWriteTransfer Функция EtwWriteTransfer помечает событие, связывающее два действия; Этот тип события называется событием передачи. |
imp_WppRecorderGetCounterHandle Метод WppRecorderGetCounterHandle. |
imp_WppRecorderIsDefaultLogAvailable Метод WppRecorderIsDefaultLogAvailable определяет, доступен ли журнал по умолчанию. |
imp_WppRecorderLogGetDefault Метод WppRecorderLogGetDefault получает дескриптор журнала средства записи по умолчанию. |
KdBreakPointWithStatus Макрос KdBreakPointWithStatus врывается в отладчик ядра и отправляет отладчику значение Status. |
KdChangeOption Подпрограмма KdChangeOption обращается и изменяет состояние в ядре, связанном с отладкой ядра. |
KdDisableDebugger Подпрограмма KdDisableDebugger отключает отладчик ядра. |
KdEnableDebugger Подпрограмма KdEnableDebugger повторно включает отладчик ядра после вызова подпрограммы KdDisableDebugger отключает отладчик ядра. |
KdPrint Макрос KdPrint отправляет сообщение отладчику ядра. |
KdPrintEx Макрос KdPrintEx отправляет строку отладчику ядра при соблюдении указанных условий. Для вызова KdPrintEx требуется двойная скобка. |
KdRefreshDebuggerNotPresent Макрос KdRefreshDebuggerNotPresent обновляет значение глобальной переменной ядра KD_DEBUGGER_NOT_PRESENT. |
KeInitializeTriageDumpDataArray Инициализирует массив блоков данных для рассмотрения дампа. |
PCW_CALLBACK Поставщики могут реализовать функцию PCW_CALLBACK для получения уведомлений при выполнении потребителями определенных действий, таких как добавление или удаление счетчиков из запроса. |
PcwAddInstance Функция PcwAddInstance добавляет указанный экземпляр счетчика в буфер потребителя. |
PcwCloseInstance Функция PcwCloseInstance закрывает указанный экземпляр набора счетчиков. |
PcwCreateInstance Функция PcwCreateInstance создает новый экземпляр для указанного зарегистрированного набора счетчиков. |
PcwRegister Функция PcwRegister регистрирует вызывающий объект в качестве поставщика указанного набора счетчиков. |
PcwUnregister Функция PcwUnregister отменяет регистрацию поставщика указанного набора счетчиков. |
RECORDER_CONFIGURE_PARAMS_INIT Функция RECORDER_CONFIGURE_PARAMS_INIT используется для инициализации структуры RECORDER_CONFIGURE_PARAMS. |
RECORDER_LOG_CREATE_PARAMS_INIT Функция RECORDER_LOG_CREATE_PARAMS_INIT используется для инициализации структуры RECORDER_LOG_CREATE_PARAMS. |
RECORDER_LOG_CREATE_PARAMS_INIT_APPEND_POINTER Метод RECORDER_LOG_CREATE_PARAMS_INIT_APPEND_POINTER инициализирует RECORDER_LOG_CREATE_PARAMS с указателем для связывания журналов. |
SeEtwWriteKMCveEvent Функция SeEtwWriteKMCveEvent — это функция трассировки для публикации событий при обнаружении уязвимости системы безопасности в драйверах режима ядра. |
vDbgPrintEx Подпрограмма vDbgPrintEx отправляет строку отладчику ядра при соблюдении определенных условий. |
vDbgPrintExWithPrefix Подпрограмма vDbgPrintExWithPrefix отправляет строку отладчику ядра при соблюдении определенных условий. Эта подпрограмма может добавлять префикс к выходным данным отладчика для упорядочения результатов отладки. |
WppRecorderConfigure Узнайте, как метод WppRecorderConfigure включает или отключает журнал по умолчанию, в который печатается WPP. |
WppRecorderDumpLiveDriverData Узнайте, как метод WppRecorderDumpLiveDriverData получает буфер, связанный с указанным журналом inflight trace recorder. |
WppRecorderGetTriageInfo Сведения о методе WppRecorderGetTriageInfo. |
WppRecorderLinkCounters Узнайте, как метод WppRecorderLinkCounters использует порядковый номер для объединения журналов, захваченных драйвером в разных буферах. |
WppRecorderLogCreate Узнайте, как метод WppRecorderLogCreate создает буфер для хранения журнала средства записи. |
WppRecorderLogDelete Узнайте, как метод WppRecorderLogDelete удаляет указанный журнал средства записи. |
WppRecorderLogDumpLiveData Метод WppRecorderLogDumpLiveData возвращает непрозрачный указатель на заголовок буфера журнала и данные, чтобы их можно было сохранить в динамическом аварийном режиме. |
WppRecorderLogSetIdentifier Узнайте, как метод WppRecorderLogSetIdentifier задает идентификатор строки для журнала средства записи. |
Структуры
DEBUG_DEVICE_DESCRIPTOR Дополнительные сведения: структура DEBUG_DEVICE_DESCRIPTOR |
DEBUG_TRANSPORT_DATA Описывает данные, относящиеся к отладочному транспорту, для использования транспортом. |
FAULT_INFORMATION Содержит сведения для настройки отчета об ошибках на устройстве. |
FAULT_INFORMATION_ARM64 Содержит сведения об ошибке для системы ARM64. |
FAULT_INFORMATION_ARM64_FLAGS Определяет сведения об ошибке. |
KBUGCHECK_CALLBACK_RECORD Дополнительные сведения: структура KBUGCHECK_CALLBACK_RECORD |
KBUGCHECK_REASON_CALLBACK_RECORD Дополнительные сведения: структура KBUGCHECK_REASON_CALLBACK_RECORD |
KBUGCHECK_REMOVE_PAGES Дополнительные сведения: структура KBUGCHECK_REMOVE_PAGES |
KBUGCHECK_SECONDARY_DUMP_DATA_EX Дополнительные сведения: структура _KBUGCHECK_SECONDARY_DUMP_DATA_EX |
KBUGCHECK_TRIAGE_DUMP_DATA Дополнительные сведения: _KBUGCHECK_TRIAGE_DUMP_DATA структура |
KTRIAGE_DUMP_DATA_ARRAY Дополнительные сведения: структура _KTRIAGE_DUMP_DATA_ARRAY |
MCG_CAP Дополнительные сведения: структура MCG_CAP |
PCW_CALLBACK_INFORMATION Объединение PCW_CALLBACK_INFORMATION предоставляет сведения об отправляемом уведомлении. Поставщик передает указатель на это объединение в качестве параметра функции PcwCallback. |
PCW_COUNTER_DESCRIPTOR Структура PCW_COUNTER_DESCRIPTOR предоставляет сведения об отправляемом уведомлении. |
PCW_COUNTER_INFORMATION Структура PCW_COUNTER_INFORMATION описывает атрибуты, определяющие конкретный экземпляр набора счетчиков. |
PCW_DATA Структура PCW_DATA описывает массив блоков данных, связанных с экземпляром . |
PCW_MASK_INFORMATION Структура PCW_MASK_INFORMATION предоставляет сведения об уведомлении, отправляемом поставщику. Эти сведения передаются как часть параметра Info в функцию PcwCallback. Эти сведения о маске включены в PCW_CALLBACK_INFORMATION. |
PCW_REGISTRATION_INFORMATION Структура PCW_REGISTRATION_INFORMATION предоставляет сведения о поставщике и наборе счетчиков. |
RECORDER_CONFIGURE_PARAMS Структура RECORDER_CONFIGURE_PARAMS является входным параметром метода WppRecorderConfigure для включения или отключения журнала по умолчанию, в котором печатается WPP. |
RECORDER_LOG_CREATE_PARAMS Структура RECORDER_LOG_CREATE_PARAMS является входным параметром метода WppRecorderLogCreate. |
WPP_TRIAGE_INFO Используется для поиска журнала WPP для отчетов WER. |