Función de devolución de llamada POFXCALLBACKPLATFORMIDLEVETO (pepfx.h)
El PlatformIdleVeto incrementos de rutina o disminuye el número de vetas para un código de veda para un estado inactivo de la plataforma.
Sintaxis
POFXCALLBACKPLATFORMIDLEVETO Pofxcallbackplatformidleveto;
NTSTATUS Pofxcallbackplatformidleveto(
[in] POHANDLE ProcessorHandle,
[in] ULONG PlatformState,
[in] ULONG VetoReason,
[in] BOOLEAN Increment
)
{...}
Parámetros
[in] ProcessorHandle
Valor POHANDLE que representa el registro del procesador (como dispositivo) con marco de administración de energía (PoFx). El complemento de extensión de plataforma (PEP) recibió previamente este identificador de PoFx durante la notificación de PEP_DPM_REGISTER_DEVICE que informó al PEP de que el procesador se había registrado con PoFx.
[in] PlatformState
Índice del estado de inactividad de la plataforma cuyo recuento de veta se está incrementando o disminuyendo. El PEP especificó previamente los estados inactivos de la plataforma admitidos en respuesta a una notificación de PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES. Si el PEP especificó los estados inactivos de la plataforma N, los índices de estado de inactividad de la plataforma válidos oscilan entre 0 y N-1.
[in] VetoReason
Código de vetado definido por PEP que indica por qué no se puede especificar el estado de inactividad de la plataforma. El PEP especificó previamente el número de motivos de veta admitidos en respuesta a una notificación de PEP_NOTIFY_PPM_QUERY_VETO_REASONS. Si el PEP especificó motivos de veta M, los códigos de veta válidos oscilan entre 1 y M.
[in] Increment
Si se va a incrementar o disminuir el número de veta. Establézcalo en TRUE para incrementar el número de vetajes por este motivo o en FALSE para disminuir el recuento.
Valor devuelto
platformIdleVeto devuelve STATUS_SUCCESS si la llamada incrementa o disminuye correctamente el recuento de vetas. Entre los posibles valores devueltos de error se incluyen el siguiente código de estado.
Valor devuelto | Descripción |
---|---|
|
Indica que la rutina PlatformIdleVeto no se implementa para este procesador. |
Observaciones
PoFx implementa esta rutina y la llama el PEP. El miembro PlatformIdleVeto de la estructura de PEP_KERNEL_INFORMATION_STRUCT_V3 es un puntero a una rutina PlatformIdleVeto.
Después de que el PEP controle la notificación de PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES, cada estado de inactividad de la plataforma comienza con un recuento de vetas de cero para todos los códigos de veto. El PEP puede incrementar el número de vetas de un código de veda para evitar que el sistema operativo pase la plataforma a este estado inactivo. El PEP disminuye el recuento de veta cuando el motivo del veto que provocó el incremento del recuento ya no está en vigor. Solo después de que el recuento de todos los códigos de veto haya decrementado a cero es el sistema operativo permitido para realizar la transición de la plataforma a este estado inactivo.
Se debe llamar a esta rutina en IRQL = PASSIVE_LEVEL.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Se admite a partir de Windows 10. |
de la plataforma de destino de | Windows |
encabezado de | pepfx.h (include Pep_x.h) |
irQL | PASSIVE_LEVEL |
Consulte también
PEP_KERNEL_INFORMATION_STRUCT_V3