DPC 개체 소개

ISR은 가능한 한 빨리 실행되어야 하므로 드라이버는 일반적으로 ISR이 반환될 때까지 인터럽트 서비스 완료를 연기해야 합니다. 따라서 시스템은 ISR에서 큐에 대기할 수 있고 나중에 ISR보다 낮은 IRQL에서 실행되는 DPC(지연 프로시저 호출 )를 지원합니다.

각 DPC는 시스템 정의 DPC 개체와 연결됩니다. 시스템은 각 디바이스 개체에 대해 하나의 DPC 개체를 제공합니다. 드라이버는 DpcForIsr 루틴으로 알려진 DPC 루틴을 등록할 때 이 DPC 개체를 초기화합니다. 둘 이상의 DPC가 필요한 경우 드라이버는 추가 DPC 개체를 만들 수 있습니다. 이러한 추가 DPC를 CustomDpc 루틴이라고 합니다.

DPC 개체 콘텐츠는 드라이버에서 직접 참조해서는 안 됩니다. 개체의 구조는 문서화되지 않았습니다. 드라이버는 각 디바이스 개체에 할당된 시스템 제공 DPC 개체에 액세스할 수 없습니다. 드라이버는 추가 DPC에 대한 스토리지를 할당하지만 이러한 DPC 개체의 내용은 시스템 루틴에서만 참조해야 합니다.

DPC 개체 및 DPC는 타이머와 함께 사용할 수도 있습니다. 자세한 내용은 타이머 개체 및 DPC를 참조하세요.