DDI 규정 준수 검사

DDI(디바이스 드라이버 인터페이스) 준수 확인 옵션은 드라이버가 Windows 운영 체제 커널과 올바르게 상호 작용하는지 여부를 결정합니다.

참고 이 옵션은 Windows 8 시작해서 사용할 수 있습니다. Windows 8.1 DDI 준수 확인(추가) 옵션을 활성화하여 추가 규칙을 테스트할 수 있습니다.

DDI 규정 준수 검사

DDI 규정 준수 검사 옵션은 정적 드라이버 검증 도구 가 함수에 필요한 IRQL에서 함수를 호출하거나 스핀 잠금을 올바르게 획득하고 해제하는 데 사용하는 것과 동일한 DDI(디바이스 드라이버 인터페이스) 사용 규칙을 적용합니다.

이 옵션이 활성 상태이고 드라이버 검증 도구가 드라이버가 DDI 규정 준수 규칙 중 하나를 위반하는 것을 감지하면 드라이버 검증 도구는 버그 검사 0xC4 발급합니다(매개 변수 1은 특정 준수 규칙의 식별자와 같음).

DDI 규정 준수 검사 옵션을 선택하면 다음 규칙이 포함됩니다.

GuardedRegions(Windows 8.1 시작)

IoSetCompletionExCompleteIrp(Windows 8.1 시작)

IrqlApcLte

IrqlDispatch

IrqlExAllocatePool

IrqlExApcLte1

IrqlExApcLte2

IrqlExApcLte3

IrqlExPassive

IrqlIoApcLte

IrqlIoDispatch

IrqlIoPassive1

IrqlIoPassive2

IrqlIoPassive3

IrqlIoPassive4

IrqlIoPassive5

IrqlKeApcLte1

IrqlKeApcLte2

IrqlKeDispatchLte

IrqlKeReleaseSpinLock

IrqlKeSetEvent

IrqlMmApcLte

IrqlMmDispatch

IrqlObPassive

IrqlPsPassive

IrqlReturn(Windows 8.1 시작)

IrqlRtlPassive

IrqlZwPassive

NdisOidComplete(Windows 8.1 시작)

NdisOidDoubleComplete(Windows 8.1 시작)

PnpRemove(Windows 8.1 시작)

RequestedPowerIrp(Windows 8.1 시작)

QueuedSpinLock(Windows 8.1 시작)

SpinLock(Windows 8.1 시작)

이 두 규칙은 현재 선택 사항이지만 권장됩니다.

(선택 사항) IrqlNtifsApcPassive

(선택 사항) IrqlIoRtlZwPassive

DDI 규정 준수 검사 옵션 활성화

드라이버 검증 도구 관리자 또는 Verifier.exe 명령줄을 사용하여 하나 이상의 드라이버에 대한 DDI 준수 확인 기능을 활성화할 수 있습니다. 자세한 내용은 드라이버 검증 도구 옵션 선택을 참조하세요. DDI 준수 확인 옵션을 활성화하거나 비활성화하려면 컴퓨터를 다시 시작해야 합니다. DDI 규정 준수 검사 기능은 표준 설정(/표준)을 사용할 때 활성화됩니다.

  • 명령줄에서

    명령줄에서 DDI 규정 준수 검사는 검증 도구 /flags 0x00020000 (비트 17)로 표시됩니다. DDI 규정 준수 검사를 활성화하려면 플래그 값 0x00020000 사용하거나 플래그 값에 0x00020000 추가합니다. 예를 들면 다음과 같습니다.

    verifier /flags 0x00020000 /driver MyDriver.sys
    

    이 기능은 다음 부팅 후에 활성화됩니다.

  • 드라이버 검증 도구 관리자 사용

    1. 드라이버 검증 도구 관리자를 시작합니다. 명령 프롬프트 창에 검증 도구를 입력합니다.
    2. 사용자 지정 설정 만들기(코드 개발자용)를 선택한 다음, 다음을 클릭합니다.
    3. 전체 목록에서 개별 설정 선택을 선택합니다.
    4. (검사) DDI 규정 준수 검사를 선택합니다.
    5. 컴퓨터를 다시 시작합니다.

DDI 규정 준수 검사(추가)

Windows 8.1 DDI 준수 검사(추가) 옵션 옵션은 드라이버가 Windows 운영 체제 커널과 올바르게 상호 작용하는지 여부를 결정하는 추가 규칙을 제공합니다. DDI 규정 준수 검사(추가) 옵션을 선택하면 다음 규칙이 테스트됩니다.

DDI 규정 준수 확인(추가) 옵션 활성화

참고

이 검사 Windows 10 빌드 19042 이상부터 사용되지 않습니다.

드라이버 검증 도구 관리자 또는 Verifier.exe 명령줄을 사용하여 하나 이상의 드라이버에 대한 DDI 규정 준수 검사(추가) 규칙을 활성화할 수 있습니다. 자세한 내용은 드라이버 검증 도구 옵션 선택을 참조하세요. DDI 준수 확인(추가) 옵션을 활성화하거나 비활성화하려면 컴퓨터를 다시 시작해야 합니다.

  • 명령줄에서

    명령줄에서 DDI 준수 검사는 검증 도구 /flags 0x00080000 (비트 19)로 표시됩니다. DDI 규정 준수 검사를 활성화하려면(추가) 플래그 값 0x00080000 사용하거나 플래그 값에 0x00080000 추가합니다. 예를 들면 다음과 같습니다.

    verifier /flags 0x00080000 /driver MyDriver.sys
    

    이 기능은 다음 부팅 후에 활성화됩니다.

  • 드라이버 검증 도구 관리자 사용

    1. 드라이버 검증 도구 관리자를 시작하려면 명령 프롬프트 창에 검증 도구를 입력합니다.
    2. 사용자 지정 설정 만들기(코드 개발자용)를 선택한 다음, 다음을 클릭합니다.
    3. 전체 목록에서 개별 설정 선택을 선택합니다.
    4. (검사) DDI 규정 준수 확인(추가)을 선택합니다.
    5. 컴퓨터를 다시 시작합니다.

DDI 규정 준수 검사(추가 IRQL) 옵션 활성화

Verifier.exe 명령줄을 사용하여 하나 이상의 드라이버에 대한 DDI 준수 추가 IRQL 규칙을 활성화할 수 있습니다. 자세한 내용은 드라이버 검증 도구 옵션 선택을 참조하세요. DDI 준수 추가 IRQL 규칙을 활성화하거나 비활성화하려면 컴퓨터를 다시 시작해야 합니다.

명령줄에서 DDI 규정 준수 추가 IRQL 검사는 규칙 클래스 값 35로 표시됩니다. 예를 들면 다음과 같습니다.

verifier /ruleclasses 35 /driver MyDriver.sys

또는

verifier /rc 35 /driver MyDriver.sys

추가 IRQL 규칙 집합은 다음 두 규칙으로 구성됩니다.

(선택 사항) IrqlNtifsApcPassive

(선택 사항) IrqlIoRtlZwPassive