PEP_KERNEL_INFORMATION_STRUCT_V2 구조체(pep_x.h)
PEP_KERNEL_INFORMATION 구조는 PEP(전원 확장 플러그 인)가 PoFx(Windows 전원 관리 프레임워크)에서 서비스를 요청하는 데 사용하는 인터페이스를 지정합니다.
구문
typedef struct _PEP_KERNEL_INFORMATION_STRUCT_V2 {
USHORT Version;
USHORT Size;
POHANDLE Plugin;
PPOFXCALLBACKREQUESTWORKER RequestWorker;
PPOFXCALLBACKENUMERATEUNMASKEDINTERRUPTS EnumerateUnmaskedInterrupts;
PPOFXCALLBACKPROCESSORHALT ProcessorHalt;
PPOFXCALLBACKREQUESTINTERRUPT RequestInterrupt;
PPOFXCALLBACKCRITICALRESOURCE TransitionCriticalResource;
PPOFXCALLBACKPROCESSORIDLEVETO ProcessorIdleVeto;
PPOFXCALLBACKPLATFORMIDLEVETO PlatformIdleVeto;
PPOFXCALLBACKUPDATEPROCESSORIDLESTATE UpdateProcessorIdleState;
PPOFXCALLBACKUPDATEPLATFORMIDLESTATE UpdatePlatformIdleState;
} PEP_KERNEL_INFORMATION_STRUCT_V2, *PPEP_KERNEL_INFORMATION_STRUCT_V2;
멤버
Version
이 구조체의 현재 버전 번호입니다. 이 멤버를 PEP_KERNEL_INFORMATION_VERSION 설정합니다.
Size
이 구조체의 크기(바이트)입니다. 이 멤버를 sizeof(PEP_KERNEL_INFORMATION)로 설정합니다.
Plugin
POFx를 사용하여 PEP 등록에 할당된 핸들입니다. PoFx는 이 멤버의 값을 설정합니다. PEP는 RequestWorker 루틴을 호출할 때 이 핸들을 사용합니다.
RequestWorker
RequestWorker 루틴에 대한 포인터입니다. PoFx는 이 멤버의 값을 설정합니다. RequestWorker 루틴은 PoFx에서 구현됩니다. PEP는 운영 체제에서 작업자 스레드의 사용을 요청하기 위해 이 루틴을 호출합니다.
EnumerateUnmaskedInterrupts
EnumerateUnmaskedInterrupts 루틴에 대한 포인터입니다. PoFx는 이 멤버의 값을 설정합니다. EnumerateUnmaskedInterrupts 루틴은 PoFx에서 구현됩니다. PEP는 이 루틴을 호출하여 마스크되지 않은 인터럽트 정보를 요청합니다.
ProcessorHalt
ProcessorHalt 루틴에 대한 포인터입니다. PoFx는 이 멤버의 값을 설정합니다. ProcessorHalt 루틴은 PoFx에서 구현됩니다. PEP는 이 루틴을 호출하여 현재 프로세서가 중지된 상태로 들어갈 수 있도록 준비합니다.
RequestInterrupt
RequestInterrupt 루틴에 대한 포인터입니다. PoFx는 이 멤버의 값을 설정합니다. RequestInterrupt 루틴은 PoFx에서 구현됩니다. PEP는 하드웨어 플랫폼이 저전력 시스템 상태로 전환된 후 손실되었을 수 있는 에지 트리거 인터럽트를 재생하기 위해 이 루틴을 호출합니다.
TransitionCriticalResource
TransitionCriticalResource 루틴에 대한 포인터입니다. PoFx는 이 멤버의 값을 설정합니다. TransitionCriticalResource 루틴은 PoFx에서 구현됩니다. PEP는 이 루틴을 호출하여 중요한 시스템 리소스를 유휴 상태로 전환합니다.
ProcessorIdleVeto
ProcessorIdleVeto 루틴에 대한 포인터입니다. PoFx는 이 멤버의 값을 설정합니다. ProcessorIdleVeto 루틴은 PoFx에서 구현됩니다. PEP는 이 루틴을 호출하여 프로세서 유휴 상태로의 보류 중인 전환에 대한 거부 횟수를 증가 또는 감소합니다.
PlatformIdleVeto
PlatformIdleVeto 루틴에 대한 포인터입니다. PoFx는 이 멤버의 값을 설정합니다. PlatformIdleVeto 루틴은 PoFx에서 구현됩니다. PEP는 이 루틴을 호출하여 플랫폼 유휴 상태로의 보류 중인 전환에 대한 거부 횟수를 증가 또는 감소합니다.
UpdateProcessorIdleState
UpdateProcessorIdleState 루틴에 대한 포인터입니다. PoFx는 이 멤버의 값을 설정합니다. UpdateProcessorIdleState 루틴은 PoFx에서 구현됩니다. PEP는 이 루틴을 호출하여 지정된 프로세서 유휴 상태의 속성을 업데이트합니다.
UpdatePlatformIdleState
UpdatePlatformIdleState 루틴에 대한 포인터입니다. PoFx는 이 멤버의 값을 설정합니다. UpdatePlatformIdleState 루틴은 PoFx에서 구현됩니다. PEP는 이 루틴을 호출하여 지정된 플랫폼 유휴 상태의 속성을 업데이트합니다.
설명
PoFxRegisterPlugin 또는 PoFxRegisterPluginEx 루틴에 대한 KernelInformation 매개 변수는 PEP_KERNEL_INFORMATION 구조체에 대한 포인터입니다. PEP는 PoFxRegisterPlugin 또는 PoFxRegisterPluginEx를 호출하기 전에 이 구조체의 버전 및 크기 멤버 값을 할당하고 설정합니다. 이 루틴을 호출하는 동안 PoFx는 구조체의 나머지 멤버를 채웁니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 10 부터 지원합니다. |
머리글 | pep_x.h |