IWDFInterrupt::SetExtendedPolicy 메서드(wudfddi.h)

[경고: UMDF 2는 UMDF의 최신 버전이며 UMDF 1을 대체합니다. 모든 새 UMDF 드라이버는 UMDF 2를 사용하여 작성해야 합니다. UMDF 1에 새 기능이 추가되지 않으며 최신 버전의 Windows 10 UMDF 1에 대한 지원이 제한됩니다. 유니버설 Windows 드라이버는 UMDF 2를 사용해야 합니다. 자세한 내용은 UMDF를 사용하여 시작 참조하세요.]

SetExtendedPolicy 메서드는 지정된 인터럽트에서 인터럽트 우선 순위, 프로세서 선호도, 선호도 정책 및 프로세서 그룹을 지정합니다.

구문

void SetExtendedPolicy(
  [in] PWDF_INTERRUPT_EXTENDED_POLICY PolicyAndGroup
);

매개 변수

[in] PolicyAndGroup

WDF_INTERRUPT_EXTENDED_POLICY_INIT 호출하여 드라이버가 이전에 초기화한 호출자가 할당한 WDF_INTERRUPT_EXTENDED_POLICY구조체에 대한 포인터입니다.

반환 값

없음

설명

이 메서드는 KMDF의 WdfInterruptSetExtendedPolicy와 동일합니다. 이 메서드에 대한 자세한 내용은 WdfInterruptSetExtendedPolicy 의 설명 섹션을 참조하세요.

드라이버가 Windows 7 이전의 운영 체제 버전에서 실행되는 경우 프레임워크는 SetExtendedPolicy를 호출할 때 드라이버가 프로세서 그룹 번호에 대해 지정하는 값을 무시합니다.

UMDF 드라이버에서 인터럽트 처리에 대한 자세한 내용은 하드웨어 액세스 및 인터럽트 처리를 참조하세요.

예제

다음 코드 예제에서는 WDF_INTERRUPT_EXTENDED_POLICY_INIT 호출하여 WDF_INTERRUPT_EXTENDED_POLICY 구조를 초기화합니다. 정책, 우선 순위 및 대상 프로세서 집합에 대한 값을 설정합니다. 및 는 SetExtendedPolicy를 호출합니다. 이 예제에서는 인터럽트 일반 우선 순위를 설정하고 프로세서 그룹 2의 프로세서 0에 인터럽트 를 할당합니다.


IWDFInterrupt* pInterrupt;

#define AFFINITY_MASK(n) ((ULONG_PTR)1 << (n))

WDF_INTERRUPT_EXTENDED_POLICY myExtendedPolicy;

WDF_INTERRUPT_EXTENDED_POLICY_INIT(&myExtendedPolicy);
myExtendedPolicy.Policy = WdfIrqPolicySpecifiedProcessors;
myExtendedPolicy.Priority = WdfIrqPriorityNormal;
myExtendedPolicy.TargetProcessorSetAndGroup.Mask = AFFINITY_MASK(0);
myExtendedPolicy.TargetProcessorSetAndGroup.Group = 2;

pInterrupt->SetExtendedPolicy(
                              &myExtendedPolicy
 );

요구 사항

요구 사항
지원 종료 UMDF 2.0 이상에서는 사용할 수 없습니다.
대상 플랫폼 데스크톱
최소 UMDF 버전 1.11
머리글 wudfddi.h
DLL WUDFx.dll

추가 정보

IWDFInterrupt

WDF_INTERRUPT_EXTENDED_POLICY

WDF_INTERRUPT_EXTENDED_POLICY_INIT