드라이버 테스트 도구 기술에 대한 개요입니다.
드라이버 테스트 도구를 개발하려면 다음 헤더가 필요합니다.
프로그래밍 가이드는 드라이버 테스트 도구참조하세요.
매크로
| 제목 | 설명 |
|---|---|
| WppRecorderConfigure 매크로 | WppRecorderConfigure 메서드는 WPP가 인쇄하는 기본 로그를 사용하거나 사용하지 않도록 설정합니다. |
| WppRecorderDumpLiveDriverData 매크로 | WppRecorderDumpLiveDriverData 메서드는 지정된 Inflight 추적 레코더 로그와 연결된 버퍼를 가져옵니다. |
| WppRecorderGetTriageInfo 매크로 | WppRecorderGetTriageInfo입니다. |
| WppRecorderLinkCounters 매크로 | WppRecorderLinkCounters입니다. |
| WppRecorderLogCreate 매크로 | 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 루틴은 커널 디버거로 연결되고 상태 값을 디버거로 보냅니다. |
|
DbgPrint DbgPrint 루틴은 커널 디버거에 메시지를 보냅니다. |
| DbgPrintEx 지정한 조건이 충족되면 DbgPrintEx 루틴은 커널 디버거에 문자열을 보냅니다. |
| DbgPrompt DbgPrompt 루틴은 커널 디버거의 표시 디바이스에 호출자 지정 사용자 프롬프트 문자열을 표시하고 사용자 응답 문자열을 가져옵니다. |
| etwActivityIdControl EtwActivityIdControl 함수는 현재 활동 식별자를 만들고, 쿼리하고, 설정합니다. |
| ETWENABLECALLBACK EtwEnableCallback 함수는 알림을 사용하거나 사용하지 않도록 설정하는 데 사용되는 선택적 드라이버 제공 콜백 함수입니다. |
|
EtwEventEnabled EtwEventEnabled 함수는 이벤트를 사용할 수 있는지 여부를 확인합니다. |
|
EtwProviderEnabled EtwProviderEnabled 함수는 지정된 수준 및 키워드에서 이벤트 로깅에 대해 공급자가 사용하도록 설정되어 있는지 확인합니다. |
|
EtwRegister EtwRegister 함수는 이벤트 공급자를 등록하고 공급자가 추적을 시작하기 전에 호출해야 합니다. |
|
EtwUnregister EtwUnregister 함수는 이벤트 공급자의 등록을 취소하고 공급자가 종료되기 전에 호출해야 합니다. |
|
EtwWrite EtwWrite 함수는 커널 모드 드라이버 코드에서 이벤트를 게시하기 위한 추적 함수입니다. |
|
EtwWriteEx EtwWriteEx 함수는 커널 모드 드라이버 코드에서 필터링을 지원하는 이벤트를 게시하기 위한 추적 함수입니다. |
|
EtwWriteString EventWriteString 함수는 정교한 데이터가 필요하지 않을 때 사용할 수 있는 추적 함수입니다. 이 함수는 디버그 인쇄 문과 유사합니다. |
|
EtwWriteTransfer EtwWriteTransfer 함수는 두 활동을 함께 연결하는 이벤트를 표시합니다. 이 유형의 이벤트를 전송 이벤트라고 합니다. |
|
imp_WppRecorderGetCounterHandle WppRecorderGetCounterHandle 메서드입니다. |
|
imp_WppRecorderIsDefaultLogAvailable WppRecorderIsDefaultLogAvailable 메서드는 기본 로그를 사용할 수 있는지 여부를 결정합니다. |
|
imp_WppRecorderLogGetDefault WppRecorderLogGetDefault 메서드는 기본 레코더 로그에 대한 핸들을 가져옵니다. |
|
KdBreakPointWithStatus KdBreakPointWithStatus 매크로는 커널 디버거로 분리되어 상태 값을 디버거로 보냅니다. |
| KdChangeOption KdChangeOption 루틴은 커널 디버깅과 관련된 커널의 상태에 액세스하고 변경합니다. |
| KdDisableDebugger KdDisableDebugger 루틴은 커널 디버거를 사용하지 않도록 설정합니다. |
|
KdEnableDebugger KdDisableDebugger 루틴을 호출하면 커널 디버거를 사용하지 않도록 설정한 후 KdEnableDebugger 루틴이 커널 디버거를 다시 사용하도록 설정합니다. |
| 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 추적 레코더 로그와 연결된 버퍼를 가져오는 방법을 알아봅니다. |
|
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_REASON_CALLBACK_ROUTINE 콜백 루틴에 의해 크래시 덤프 파일에서 제거할 드라이버 제공 데이터의 하나 이상의 페이지를 설명합니다. |
|
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 구조체는 WPP가 인쇄하는 기본 로그를 사용하거나 사용하지 않도록 설정하는 WppRecorderConfigure 메서드의 입력 매개 변수입니다. |
|
RECORDER_LOG_CREATE_PARAMS RECORDER_LOG_CREATE_PARAMS 구조체는 WppRecorderLogCreate 메서드에 대한 입력 매개 변수입니다. |
|
WPP_TRIAGE_INFO WER 보고를 위한 WPP 로그를 찾는 데 사용됩니다. |