POFXCALLBACKPLATFORMIDLEVETO 콜백 함수(pep_x.h)

PlatformIdleVeto 루틴은 플랫폼 유휴 상태에 대한 거부권 코드에 대한 거부 횟수를 증가 또는 감소합니다.

구문

POFXCALLBACKPLATFORMIDLEVETO Pofxcallbackplatformidleveto;

NTSTATUS Pofxcallbackplatformidleveto(
  [in] POHANDLE ProcessorHandle,
  [in] ULONG PlatformState,
  [in] ULONG VetoReason,
  [in] BOOLEAN Increment
)
{...}

매개 변수

[in] ProcessorHandle

PoFx( 전원 관리 프레임워크 )를 사용하여 프로세서(디바이스)의 등록을 나타내는 POHANDLE 값입니다. PEP(플랫폼 확장 플러그 인)는 이전에 프로세서가 PoFx에 등록되었음을 PEP에 알리는 PEP_DPM_REGISTER_DEVICE 알림 중에 PoFx에서 이 핸들을 받았습니다.

[in] PlatformState

거부 횟수가 증가하거나 감소되는 플랫폼 유휴 상태의 인덱스입니다. PEP는 이전에 PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES 알림에 대한 응답으로 지원되는 플랫폼 유휴 상태를 지정했습니다. PEP가 N 플랫폼 유휴 상태를 지정한 경우 유효한 플랫폼 유휴 상태 인덱스는 0에서 N-1까지입니다.

[in] VetoReason

플랫폼 유휴 상태를 입력할 수 없는 이유를 나타내는 PEP 정의 거부 코드입니다. PEP는 이전에 PEP_NOTIFY_PPM_QUERY_VETO_REASONS 알림에 대한 응답으로 지원되는 거부권 이유 수를 지정했습니다. PEP가 M 거부 이유를 지정한 경우 유효한 거부 코드 범위는 1에서 M까지입니다.

[in] Increment

거부권 수를 증가 또는 감소할지 여부입니다. 이 거부권 이유로 거부권 수를 증가하려면 TRUE로 설정하거나 FALSE로 설정하여 개수를 감소합니다.

반환 값

PlatformIdleVeto 는 호출이 성공적으로 거부 횟수를 증가하거나 감소하는 경우 STATUS_SUCCESS 반환합니다. 가능한 오류 반환 값에는 다음 상태 코드가 포함됩니다.

반환 값 Description
STATUS_NOT_IMPLEMENTED
이 프로세서에 대해 PlatformIdleVeto 루틴이 구현되지 않음을 나타냅니다.

설명

이 루틴은 PoFx에 의해 구현되며 PEP에 의해 호출됩니다. PEP_KERNEL_INFORMATION_STRUCT_V3 구조체의 PlatformIdleVeto 멤버는 PlatformIdleVeto 루틴에 대한 포인터입니다.

PEP가 PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES 알림을 처리한 후 각 플랫폼 유휴 상태는 모든 거부권 코드에 대한 거부 횟수 0으로 시작합니다. PEP는 운영 체제가 플랫폼을 이 유휴 상태로 전환하는 것을 방지하기 위해 거부권 코드의 거부 횟수를 증가할 수 있습니다. PEP는 개수를 증가시킨 거부권 이유가 더 이상 적용되지 않을 때 거부권 수를 감소합니다. 모든 거부 코드 수가 0으로 감소된 후에만 플랫폼을 이 유휴 상태로 전환할 수 있는 운영 체제가 있습니다.

이 루틴은 IRQL = PASSIVE_LEVEL 호출해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10 부터 지원합니다.
대상 플랫폼 Windows
헤더 pep_x.h(Pep_x.h 포함)
IRQL PASSIVE_LEVEL

추가 정보

PEP_KERNEL_INFORMATION_STRUCT_V3

PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES

PEP_NOTIFY_PPM_QUERY_VETO_REASONS