다음을 통해 공유


Windows용 USB 디바이스 빌드 개요

이 섹션에서는 USB 주변 장치 제조업체에 대한 링크를 제공합니다.

USB 디바이스 열거 프로세스

  • USB 스택은 디바이스를 열거하는 방법

    Microsoft USB 드라이버 스택에서 사용하는 열거형 프로세스에 대한 자세한 설명 - 스택이 디바이스의 존재를 감지하고 PnP 관리자에게 새 디바이스가 도착했음을 나타내는 시점부터 시작합니다.

  • Windows 8 USB 2.1, 2.0, 1.1 디바이스 열거형 변경

    Windows 8 스택이 USB 2.1, 2.0 및 1.1 디바이스를 열거하는 방법을 USB 드라이버 스택에서 수정했습니다. 이러한 수정은 새로운 USB 기능을 지원하고 디바이스 열거 성능을 향상시킵니다. 게시물을 읽으면 이러한 미묘한 변화에 대한 인식을 높이고 디바이스/펌웨어 빌더가 열거형 오류의 근본 원인을 쉽게 확인할 수 있습니다.

Microsoft OS 설명자

USB 디바이스는 디바이스 및 해당 인터페이스 및 엔드포인트에 대한 표준 설명자를 펌웨어에 저장합니다. 또한 디바이스는 클래스 및 공급업체별 설명자를 저장할 수 있습니다. 그러나 해당 설명자가 포함할 수 있는 정보 유형은 제한적입니다. IHV는 일반적으로 Windows 업데이트 또는 CD와 같은 미디어를 사용하여 사용자에게 사진, 아이콘 및 사용자 지정 드라이버와 같은 다양한 디바이스 관련 정보를 제공해야 합니다.

IHV는 Microsoft OS 설명자를 사용하여 정보를 별도로 제공하는 대신 펌웨어에 저장할 수 있습니다. Window는 Microsoft OS 설명자를 읽어 해당 정보를 검색하고 이를 사용하여 사용자 상호 작용 없이 디바이스를 설치하고 구성합니다. USB 디바이스용 Microsoft OS 설명자를 참조하세요.

  • Microsoft OS 1.0 설명자 사양

    이 문서에서는 Microsoft OS 설명자를 소개합니다. 여기에는 OS 문자열 설명자, 확장 속성 OS 기능 설명자 및 OS 기능 설명자 형식에 대한 사양이 포함됩니다.

  • Microsoft OS 2.0 설명자 사양

    이 문서에서는 Microsoft OS 설명자 버전 2.0의 구현을 정의하고 설명합니다. Microsoft OS 2.0 설명자의 목표는 OS 설명자 버전 1.0의 제한 사항 및 안정성 문제를 해결하고 USB 디바이스에 대한 새로운 Windows 관련 기능을 사용하도록 설정하는 것입니다.

  • Microsoft OS 설명자를 사용하여 함수 드라이버로 Winusb.sys 로드

    IHV는 호환되는 ID를 "WINUSB"로 보고하는 특정 MICROSOFT OS(운영 체제) 기능 설명자를 정의할 수 있습니다. 이러한 설명자를 사용하면 Windows에서 사용자 지정 INF 파일 없이 디바이스의 함수 드라이버로 Winusb.sys 로드할 수 있습니다. 호환 ID를 정의하는 방법에 대한 예제는 확장 호환 ID OS 기능 설명자 사양의 예제 섹션을 참조하세요. 사양은 Microsoft OS 1.0 설명자 사양 다운로드에 포함되어 있습니다.

컨테이너 ID 설정

  • USB 디바이스용 컨테이너 ID

    USB(유니버설 직렬 버스) 디바이스용 컨테이너 ID가 생성되는 방법을 설명합니다.

  • Windows의 USB ContainerID

    디바이스 제조업체가 Windows에서 올바르게 검색할 수 있도록 다기능 USB 디바이스를 프로그래밍하기 위한 지침입니다.

  • USB 디바이스에 대한 컨테이너 ID를 생성하는 방법

    블로그 게시물에서는 디바이스가 컨테이너 ID를 보고하여 Windows에서 디바이스를 열거하고 디바이스 및 프린터 에 제대로 표시하는 방법을 설명합니다. 여러 함수(복합 디바이스) 또는 구성 요소(복합 디바이스)를 지원하는 디바이스의 경우 디바이스는 각 부분에 대해 동일한 ID를 보고해야 합니다. 디바이스는 Microsoft OS ContainerID 설명자의 ID를 보고해야 합니다.

전원 관리 구현

  • USB 3.0 하드웨어의 전원 관리 연결

    이 문서에서는 하드웨어 공급업체 및 OEM이 선택적 일시 중단과 함께 LPM(연결 전원 관리)을 사용하여 USB 디바이스에 대한 전원 관리를 구현하기 위한 지침을 제공합니다. U1에서 U2로의 하드웨어 전환을 설명하고 USB 컨트롤러, 허브 및 디바이스에서 LPM 구현의 일반적인 함정에 대한 정보를 제공합니다.

  • 선택적 일시 중단을 신비화

    이 블로그 게시물에서는 USB 드라이버 스택이 USB 3.0 디바이스에서 함수 및 선택적 일시 중단을 처리하는 방법을 설명합니다.

디버깅 및 진단 도구

  • Windows용 USB 이벤트 추적

    ETW(Windows용 이벤트 추적)는 운영 체제에서 제공하는 범용 고속 추적 시설입니다. 여기에는 도구를 설치하고, 추적 파일을 만들고, USB 추적 파일에서 이벤트를 분석하는 방법에 대한 정보가 포함됩니다.

  • WPP 소프트웨어 추적

    Windows WPP(소프트웨어 추적 전처리기)의 기본 작업을 사용하여 소프트웨어 구성 요소(추적 공급자)의 작업을 추적하는 방법입니다.

  • USB 3.0 확장 (usb3kd.dll)

    이러한 명령은 USB 3.0 스택의 세 드라이버(USB 3.0 허브 드라이버, USB 호스트 컨트롤러 확장 드라이버 및 USB 3.0 호스트 컨트롤러 드라이버)가 유지 관리하는 데이터 구조의 정보를 표시합니다.

  • USB 2.0 확장 (usb2kd.dll)

    이러한 명령은 USB 2.0 스택의 드라이버에서 유지 관리하는 데이터 구조의 정보(USB 2.0 허브 드라이버 및 USB 2.0 호스트 컨트롤러 드라이버)를 표시합니다.