드라이버 검증 도구

드라이버 검증 도구는 시스템을 손상시킬 수 있는 잘못된 함수 호출 또는 작업을 검색하기 위해 Windows 커널 모드 드라이버 및 그래픽 드라이버를 모니터링합니다. 드라이버 검증 도구는 부적절한 동작을 찾기 위해 Windows 드라이버에 다양한 스트레스와 테스트를 적용할 수 있습니다.

드라이버 검증 도구를 여러 드라이버에 대해 동시에 실행할 수도 있고 한 번에 한 드라이버에 대해 실행할 수도 있습니다. 실행할 테스트를 구성하여 드라이버에 심한 스트레스 로드를 적용하거나 보다 간소화된 테스트를 적용할 수 있습니다.

 

드라이버 검증 도구는 어디서 다운로드할 수 있나요?

다운로드하지 않아도 됩니다. 드라이버 검증 도구(Verifier.exe)는 Windows 2000부터 모든 버전의 Windows에 포함되어 있습니다(%windir%\system32 디렉터리). 별도의 드라이버 검증 도구 다운로드 패키지가 없습니다.

  • 명령 프롬프트 창을 엽니다(관리자 권한으로 실행).
  • verifier를 입력하여 드라이버 검증 도구 관리자를 열거나 verifier /?를 입력하여 명령줄 옵션을 표시합니다. 자세한 내용은 Driver Verifier Command Syntax을 참조하세요.

주의  

  • 드라이버 검증 도구를 실행하면 컴퓨터에 크래시가 발생할 수 있습니다.
  • 테스트 및 디버그에 사용 중인 컴퓨터에서만 드라이버 검증 도구를 실행해야 합니다.
  • 드라이버 검증 도구를 사용하려면 컴퓨터의 관리자 그룹에 속해야 합니다.

Windows 8.1 및 이전 버전의 Windows용 드라이버 버전의 변경 내용에 대한 자세한 내용은 드라이버 검증 도구: 새 소식을 참조하세요.

 

 

드라이버 검증 도구 사용 시기

드라이버 개발 및 테스트 프로세스 전체에서 드라이버 검증 도구를 실행합니다.

  • 드라이버 검증 도구를 사용하여 수정하기 더 쉽고 비용이 적게 드는 개발 수명 주기의 초기 단계에서 문제를 찾습니다.

  • WDK, Visual Studio 및 HCK(Windows 하드웨어 인증 키트) 테스트를 사용하여 테스트할 드라이버를 배포하는 경우 드라이버 검증 도구를 사용합니다. 드라이버 테스트를 참조하세요.

  • 테스트 오류 및 컴퓨터 크래시 문제를 해결하고 디버그하는 데 드라이버 검증 도구를 사용합니다.

 

드라이버 검증 도구 시작 방법

테스트 컴퓨터나 테스트 및 디버그 중인 컴퓨터에서만 드라이버 검증 도구를 실행해야 합니다. 드라이버 검증 도구를 최대한 활용하려면 커널 디버거를 사용하고 테스트 컴퓨터에 연결해야 합니다. Windows 디버깅을 참조하세요.

  1. 명령 프롬프트 창을 열고(관리자 권한으로 실행) verifier를 입력하여 드라이버 검증 도구 관리자를 엽니다.
  2. 표준 설정 만들기(기본값)를 선택하고 다음을 클릭합니다.

    사용자 지정 설정 만들기를 선택하여 미리 정의된 설정에서 선택하거나 개별 옵션을 선택할 수도 있습니다. 자세한 내용은 드라이버 검증 도구 옵션드라이버 검증 도구 옵션 선택을 참조하세요.

  3. 검증할 드라이버를 선택합니다.

    옵션권장 사용 방법
    서명되지 않은 드라이버 자동으로 선택

    서명된 드라이버가 필요하지 않은 Windows 버전을 실행하는 컴퓨터에서 테스트하는 데 유용한 옵션입니다.

    이전 버전의 Windows용 드라이버 자동으로 선택

    최신 버전의 Windows와 드라이버 호환성을 테스트하는 데 유용한 옵션입니다.

    이 컴퓨터에 설치된 모든 드라이버 자동으로 선택

    시스템에서 최대 개수의 드라이버를 테스트합니다. 이 옵션은 드라이버가 시스템의 다른 장치 또는 드라이버와 상호 작용할 수 있는 테스트 시나리오에 유용합니다.

    또한 이 옵션은 특수 풀과 일부 리소스 추적에 사용할 수 있는 리소스를 소모할 수 있습니다. 모든 드라이버를 테스트하면 시스템 성능에 좋지 않은 영향을 미칠 수도 있습니다.

    드라이버 이름을 목록에서 선택

    대부분의 경우 테스트할 드라이버를 직접 지정하는 것이 좋습니다.

    장치 스택에 있는 모든 드라이버를 선택하면 강화된 I/O 검증 옵션을 통해 IRP가 스택에 있는 각 드라이버 간에 전달될 때 개체를 추적하고 준수를 검사할 수 있으며, 오류가 발견될 경우 보다 자세한 정보를 제공할 수 있습니다.

    시스템 또는 드라이버 성능 메트릭을 측정하는 테스트 시나리오를 실행하는 경우 또는 메모리 손상이나 리소스 추적 문제(교착 상태, 뮤텍스)를 검색하는 데 사용할 수 있는 최대 개수의 리소스를 할당하려는 경우 단일 드라이버를 선택합니다. 한 번에 하나의 드라이버에서 사용할 때는 특수 풀I/O 검증 옵션이 더 효과적입니다.

     

  4. 마침을 클릭하고 컴퓨터를 다시 부팅합니다.

참고  명령 프롬프트 창에서 드라이버 검증 도구를 실행할 수도 있습니다. 예를 들어 myDriver.sys라는 드라이버에서 표준 설정을 사용하여 드라이버 검증 도구를 실행하려면 다음 명령을 사용합니다.

verifier  /standard /driver myDriver.sys

자세한 내용은 Driver Verifier Command Syntax을 참조하세요.

 

드라이버 검증 도구 제어 방법(중지, 다시 설정, 설정 및 상태 보기)

Ff545448.wedge(ko-kr,VS.85).gif드라이버 검증 도구를 중지하거나 다시 설정하려면

  1. 명령 프롬프트 창을 열고(관리자 권한으로 실행) verifier를 입력하여 드라이버 검증 도구 관리자를 엽니다.
  2. 기존 설정 삭제를 선택합니다.
  3. 컴퓨터를 다시 부팅합니다.

또는 명령 프롬프트 창에서 다음 명령을 입력하고 컴퓨터를 다시 부팅합니다.

verifier  /reset

Ff545448.wedge(ko-kr,VS.85).gif드라이버 검증 도구 설정을 보려면

  1. 명령 프롬프트 창을 열고(관리자 권한으로 실행) verifier를 입력하여 드라이버 검증 도구 관리자를 엽니다.
  2. 기존 설정 표시를 선택합니다.

또는 명령 프롬프트 창에서 다음 명령을 입력합니다.

verifier  /querysettings

Ff545448.wedge(ko-kr,VS.85).gif드라이버 검증 도구 통계를 보려면

  1. 명령 프롬프트 창을 열고(관리자 권한으로 실행) verifier를 입력하여 드라이버 검증 도구 관리자를 엽니다.
  2. 현재 확인된 드라이버에 대한 정보 표시를 선택합니다.

또는 명령 프롬프트 창에서 다음 명령을 입력합니다.

verifier  /query

 

드라이버 검증 도구 위반을 디버그하는 방법

드라이버 검증 도구를 최대한 활용하려면 커널 디버거를 사용하고 테스트 컴퓨터에 연결해야 합니다. 자세한 내용은 Windows 디버깅을 참조하세요.

드라이버 검증 도구는 위반을 검색할 경우 버그 검사를 생성하여 컴퓨터를 중지합니다. 이렇게 하면 문제를 디버그하는 데 필요한 정보를 가장 많이 제공할 수 있습니다. 커널 디버거가 드라이버 검증 도구를 실행하는 테스트 컴퓨터에 연결되어 있을 경우 드라이버 검증 도구가 위반을 검색하면 Windows가 디버거로 전환되고 오류에 대한 간략한 설명을 표시합니다.

모든 드라이버 검증 도구 위반은 버그 검사를 발생시키며 가장 일반적인 위반(반드시 모두 그런 것은 아니지만)은 다음과 같습니다.

자세한 내용은 드라이버 검증 도구가 사용되는 경우 버그 검사 처리를 참조하세요. 버그 검사 0xC4 디버그에 대한 팁은 버그 검사 0xC4 디버그: DRIVER_VERIFIER_DETECTED_VIOLATION을 참조하세요.

새 디버그 세션을 시작할 때는 디버거 확장 명령 !analyze를 사용합니다. 커널 모드에서 !analyze 명령은 최신 버그 검사에 대한 정보를 표시합니다. !analyze -v 명령은 추가 정보를 표시하고 오류가 발생한 드라이버를 정확하게 파악하려고 합니다.

kd> !analyze -v

!analyze 외에도 다음 디버거 확장을 사용하여 드라이버 검증 도구와 관련된 정보를 볼 수 있습니다.

  • !verifier는 캡처된 드라이버 검증 도구 통계를 덤프합니다. 사용 가능한 옵션을 모두 표시하려면 !verifier -?를 사용하세요.
    kd> !verifier
    
  • !deadlock은 드라이버 검증 도구의 교착 상태 검색 기능에 의해 추적되는 잠금 또는 개체와 관련된 정보를 표시합니다. 사용 가능한 옵션을 모두 표시하려면 !deadlock -?를 사용하세요.
    kd> !deadlock
    
  • !iovirp [address]는 I/O 검증 도구에 의해 추적되는 IRP와 관련된 정보를 표시합니다. 예:
    kd> !iovirp 947cef68
    
    
  • !ruleinfo [RuleID]는 위반된 DDI 준수 검사 규칙에 관련된 정보를 표시합니다. RuleID는 항상 버그 검사의 첫 번째 인수입니다. 모든 DDI 준수 검사 RuleID는 0x200nn 형식입니다. 예를 들면 다음과 같습니다.
    kd> !ruleinfo 0x20005
    

관련 항목

드라이버 검증 도구: 새 소식
드라이버 검증 도구 옵션
Driver Verifier Command Syntax
드라이버 검증 도구 사용
드라이버 검증 도구 제어

 

 

표시:
© 2014 Microsoft