Funzione di callback POFXCALLBACKPLATFORMIDLEVETO (pep_x.h)
Il PlatformIdleVeto incrementa o decrementa il conteggio veto per un codice veto per uno stato di inattività della piattaforma.
Sintassi
POFXCALLBACKPLATFORMIDLEVETO Pofxcallbackplatformidleveto;
NTSTATUS Pofxcallbackplatformidleveto(
[in] POHANDLE ProcessorHandle,
[in] ULONG PlatformState,
[in] ULONG VetoReason,
[in] BOOLEAN Increment
)
{...}
Parametri
[in] ProcessorHandle
Valore POHANDLE che rappresenta la registrazione del processore (come dispositivo) con framework di risparmio energia (PoFx). Il plug-in di estensione della piattaforma (PEP) ha ricevuto in precedenza questo handle da PoFx durante la PEP_DPM_REGISTER_DEVICE notifica che informava il PEP che il processore era stato registrato con PoFx.
[in] PlatformState
Indice dello stato di inattività della piattaforma il cui conteggio veto viene incrementato o decrementato. Il PEP ha specificato in precedenza gli stati di inattività della piattaforma supportati in risposta a una notifica di PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES. Se lo stato di inattività della piattaforma N specificato da PEP è valido, gli indici di stato di inattività della piattaforma validi sono compresi tra 0 e N-1.
[in] VetoReason
Codice veto definito da PEP che indica il motivo per cui non è possibile immettere lo stato di inattività della piattaforma. Il PEP ha specificato in precedenza il numero di motivi di veto supportati in risposta a una notifica di PEP_NOTIFY_PPM_QUERY_VETO_REASONS. Se il PEP ha specificato motivi di veto M, i codici di veto validi vanno da 1 a M.
[in] Increment
Indica se incrementare o decrementare il conteggio dei veto. Impostare su TRUE per incrementare il conteggio dei veti per questo motivo di veto o su FALSE per decrementare il conteggio.
Valore restituito
PlatformIdleVeto restituisce STATUS_SUCCESS se la chiamata incrementa o decrementa correttamente il conteggio dei veto. I possibili valori restituiti dall'errore includono il codice di stato seguente.
Valore restituito | Descrizione |
---|---|
|
Indica che la routine PlatformIdleVeto non è implementata per questo processore. |
Osservazioni
Questa routine viene implementata da PoFx e viene chiamata dal PEP. Il membro PlatformIdleVeto della struttura PEP_KERNEL_INFORMATION_STRUCT_V3 è un puntatore a una routine PlatformIdleVeto.
Dopo che il PEP gestisce la notifica di PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES, ogni stato di inattività della piattaforma inizia con un conteggio veto pari a zero per tutti i codici veto. Il PEP può incrementare il numero di veto di un codice veto per impedire al sistema operativo di passare la piattaforma a questo stato di inattività. Il PEP decrementa il conteggio dei veti quando il motivo del veto che ha causato l'incremento del conteggio non è più attivo. Solo dopo che il conteggio per tutti i codici veto è diminuito a zero è il sistema operativo autorizzato a eseguire la transizione della piattaforma a questo stato di inattività.
Questa routine deve essere chiamata in IRQL = PASSIVE_LEVEL.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Supportato a partire da Windows 10. |
piattaforma di destinazione | Finestre |
intestazione | pep_x.h (includere Pep_x.h) |
IRQL | PASSIVE_LEVEL |
Vedere anche
PEP_KERNEL_INFORMATION_STRUCT_V3