PnP 및 전원 관리 포팅
WDF는 플러그 앤 플레이(PnP) 및 전원 관리에 대한 지능형 기본값을 구현하므로 간단한 드라이버(대부분의 필터 드라이버 포함)는 PnP의 기본 요구 사항을 충족하기 위해 추가 코드가 필요하지 않습니다. 프레임워크는 PnP, 전원 관리 및 전원 정책 상태 머신을 자동으로 만들고 관리합니다. 기본적으로 다음과 같습니다.
- FDO는 디바이스에 대한 전원 정책을 소유합니다.
- EvtDriverDeviceAdd 콜백만 필요합니다. 다른 모든 PnP 및 전원 관리 콜백은 선택 사항입니다. 드라이버는 디바이스별 기능을 지원하기 위해 다른 콜백을 구현합니다.
- 프레임워크는 모든 WDFQUEUE 개체에 대한 전원 관리를 구현하므로 기본적으로 요청은 디바이스 하드웨어를 사용할 수 있는 경우에만(즉, D0 상태) 드라이버의 I/O 이벤트 콜백으로 큐에서 디스패치됩니다.
디바이스가 인터럽트 또는 맵 메모리를 지원하지 않거나 전원 전환이 발생할 때 초기화 또는 초기화가 필요한 경우 WDF 드라이버에는 EvtDriverDeviceAdd 콜백만 필요합니다. 디바이스를 삽입하거나 제거하면 프레임워크는 PnP 및 전원 이벤트 콜백을 정의된 순서로 호출합니다. 이 섹션의 topics 순서에 대해 설명합니다. 이 순서는 PDO, FDO 및 필터 DO에 따라 약간 다릅니다.
- 함수 또는 필터 디바이스 개체에 대한 전원 켜기 시퀀스
- 물리적 디바이스 개체에 대한 전원 켜기 시퀀스
- 함수 또는 필터 디바이스 개체에 대한 전원 낮추기 및 제거 시퀀스
- 물리적 디바이스 개체에 대한 전원 낮추기 및 제거 시퀀스
- 서프라이즈 제거 시퀀스
각 부 PnP 및 전원 IRP 코드에 해당하는 콜백의 전체 목록은 WDM IRP 및 WDF 이벤트 콜백 함수를 참조하세요.
프레임워크 기반 드라이버에서 PnP 및 전원 관리를 지원하는 방법에 대한 자세한 내용은 다음 topics 참조하세요.