Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Cada notificação de PPM (gerenciamento de energia do processador) recebida pela rotina de retorno de chamada AcceptProcessorNotification da PEP é acompanhada por um parâmetro de notificação que indica o tipo de notificação e um parâmetro data que aponta para uma estrutura de dados que contém as informações do tipo de notificação especificado.
Nessa chamada, o parâmetro Notificação é definido como um valor constante PEP_NOTIFY_PPM_XXX que indica o tipo de notificação. O parâmetro Data aponta para um tipo de estrutura PEP_PPM_XXX associado a esse tipo de notificação.
As seguintes IDs de notificação de PPM (gerenciamento de energia do processador) são usadas pela rotina de retorno de chamada AcceptProcessorNotification.
PEP_NOTIFY_PPM_QUERY_CAPABILITIES
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_CAPABILITIES.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_CAPABILITIES.
Os comentários
Informa ao PEP que está sendo consultado sobre suas capacidades de gerenciamento de energia.
A PoFx (estrutura de gerenciamento de energia do Windows) envia essa notificação quando o PEP é consultado para seus recursos de gerenciamento de energia. Isso acontece no momento da inicialização do processador e será enviado para cada processador no sistema.
Plataformas com processadores x86/AMD64 devem usar interfaces ACPI para controle de desempenho do processador.
Para enviar uma notificação PEP_NOTIFY_PPM_QUERY_CAPABILITIES, a PoFx chama a rotina de callback AcceptProcessorNotification do PEP. Nessa chamada, o valor do parâmetro de notificação é PEP_NOTIFY_PPM_QUERY_CAPABILITIES e o parâmetro Data aponta para uma estrutura PEP_PPM_QUERY_CAPABILITIES.
Para uma notificação do tipo PEP_NOTIFY_PPM_QUERY_CAPABILITIES, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_QUERY_IDLE_STATES
Notificação
O valor PEP_NOTIFY_PPM_QUERY_IDLE_STATES.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_IDLE_STATES.
Os comentários
Informa o PEP sobre os estados ociosos.
Para enviar uma notificação PEP_NOTIFY_PPM_QUERY_IDLE_STATES, o PoFx aciona a rotina de callback AcceptProcessorNotification do PEP. Nessa chamada, o valor do parâmetro de notificação é PEP_NOTIFY_PPM_QUERY_IDLE_STATES e o parâmetro Data aponta para uma estrutura PEP_PPM_QUERY_IDLE_STATES.
Para uma notificação PEP_NOTIFY_PPM_QUERY_IDLE_STATES, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_IDLE_SELECT
Notificação
O valor PEP_NOTIFY_PPM_IDLE_SELECT.
Dados
Um ponteiro para uma estrutura PEP_PPM_IDLE_SELECT.
Os comentários
Informa o PEP sobre a seleção em estado ocioso.
Para enviar uma notificação PEP_NOTIFY_PPM_IDLE_SELECT, a PoFx chama a função de callback AcceptProcessorNotification do PEP. Nessa chamada, o valor do parâmetro de notificação é PEP_NOTIFY_PPM_IDLE_SELECT e o parâmetro Data aponta para uma estrutura PEP_PPM_IDLE_SELECT.
Para uma notificação PEP_NOTIFY_PPM_IDLE_SELECT, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_IDLE_CANCEL
Notificação
O valor PEP_NOTIFY_PPM_IDLE_CANCEL.
Dados
Um ponteiro para uma estrutura PEP_PPM_IDLE_CANCEL.
Os comentários
Informa o PEP sobre uma ação de cancelamento.
Para enviar uma notificação PEP_NOTIFY_PPM_IDLE_CANCEL, a PoFx chama a rotina de retorno de chamada AcceptProcessorNotification do PEP. Nessa chamada, o valor do parâmetro de notificação é PEP_NOTIFY_PPM_IDLE_CANCEL e o parâmetro Data aponta para uma estrutura PEP_PPM_IDLE_CANCEL.
Para uma notificação PEP_NOTIFY_PPM_IDLE_CANCEL, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_IDLE_EXECUTE
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_IDLE_EXECUTE.
Dados
Um ponteiro para uma estrutura PEP_PPM_IDLE_EXECUTE ou PEP_PPM_IDLE_EXECUTE_V2.
Os comentários
Enviado para o PEP para fazer a transição do processador atual para o estado ocioso especificado.
A PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação ao PEP para fazer a transição do processador atual para o estado ocioso especificado.
O PEP pode preparar o hardware para entrar no estado ocioso selecionado anteriormente, incluindo a notificação do sistema operacional dos recursos centrais do sistema que podem ser afetados pela transição para o modo de suspensão. Em seguida, ele deve executar a instrução de parada para fazer a transição do processador para o estado ocioso. Após retornar do estado ocioso, o PEP deve desfazer a configuração de hardware, incluindo notificar o sistema operacional dos recursos centrais do sistema que podem ter se tornado ativos após o despertar. Se o PEP não puder executar o estado ocioso do processador (e da plataforma), ele deverá retornar um status de erro.
Ao usar a interface de estado ocioso coordenada, o sistema operacional usa a estrutura PEP_PPM_IDLE_EXECUTE_V2 que inclui os campos CoordinatedStateCount e CoordinatedState com a lista de estados ociosos coordenados que serão inseridos pela transição ociosa. O campo PlatformState especificará o estado ocioso coordenado da plataforma mais profunda que está sendo inserido, se houver.
Ao não usar a interface de estado ocioso coordenada, o sistema operacional usa a estrutura PEP_PPM_IDLE_EXECUTE.
Para uma notificação PEP_NOTIFY_PPM_IDLE_EXECUTE, a rotina AcceptProcessorNotification é chamada com interrupções desabilitadas.
PEP_NOTIFY_PPM_IDLE_COMPLETE
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino.
Notificação
O valor PEP_NOTIFY_PPM_IDLE_COMPLETE.
Dados
Um ponteiro para uma estrutura PEP_PPM_IDLE_COMPLETE ou PEP_PPM_IDLE_COMPLETE_V2.
Os comentários
Informa ao PEP que o processador atual está acordando de uma transição ociosa concluída.
A PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação quando o processador atual está acordando de uma transição ociosa concluída. Se a plataforma estiver executando uma transição de ociosidade da plataforma, o primeiro processador a ser ativado indicará o estado de ociosidade da plataforma do qual está saindo. Dependendo do tipo de sincronização usada na transição ociosa da plataforma, o primeiro processador a ser ativado de um estado ocioso pode não ser o mesmo que entrou nesse estado.
Se o processador estava executando um estado ocioso profundo, o PEP não deve esperar até receber a notificação completa para restaurar o contexto principal ou notificar o sistema operacional de que os recursos principais foram restaurados. O sistema operacional espera que esses recursos tenham sido restaurados após a conclusão da notificação de execução. Quando o hipervisor estiver habilitado, o PEP receberá essa notificação somente após sair de um estado ocioso da plataforma e com o campo ProcessorState definido como PEP_PROCESSOR_IDLE_STATE_UNKNOWN.
Ao usar a interface de estado ocioso coordenada, o sistema operacional usa a estrutura de PEP_PPM_IDLE_COMPLETE_V2 que inclui os campos CoordinatedStateCount e CoordinatedState com a lista de estados ociosos coordenados que serão encerrados pela transição ociosa. O campo PlatformState especificará o estado de inatividade coordenada da plataforma mais profunda do qual está saindo, se houver. Note que o conjunto de estados ociosos coordenados saídos por este processador pode ser diferente do conjunto de estados ociosos coordenados entrados por ele, se a sincronização frouxa for usada.
Ao não usar a interface de estado ocioso coordenada, o sistema operacional usa a estrutura PEP_PPM_IDLE_COMPLETE.
Para uma notificação PEP_NOTIFY_PPM_IDLE_COMPLETE, a rotina AcceptProcessorNotification é chamada com interrupções desabilitadas e sempre é executada no processador de destino.
PEP_NOTIFY_PPM_IS_PROCESSOR_HALTED
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_IS_PROCESSOR_HALTED.
Dados
Um ponteiro para a estrutura PEP_PPM_IS_PROCESSOR_HALTED.
Os comentários
Enviado ao PEP para determinar se o processador especificado está parado no estado ocioso selecionado.
A PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação ao PEP para determinar se o processador especificado está parado no estado ocioso selecionado. O sistema operacional usará essa notificação para verificar se um processador secundário concluiu totalmente a transição para ocioso ao coordenar estados ociosos da plataforma. O PEP deve garantir que o processador-alvo atingiu um estado no qual a transição ociosa da plataforma pode ocorrer com segurança (por exemplo, verificando os registradores de hardware para ver se o núcleo está parado). Depois que essa notificação indicar que o processador está em um estado ocioso, esse processador não deve ser despertado, a menos que o sistema operacional solicite isso explicitamente.
O PEP pode receber essa notificação a qualquer momento entre as notificações de IDLE_SELECT e IDLE_COMPLETE. É garantido receber essa notificação no máximo uma vez durante uma transição ociosa.
Para uma notificação PEP_NOTIFY_PPM_IS_PROCESSOR_HALTED, a rotina AcceptProcessorNotification é chamada em qualquer IRQL e com interrupções desabilitadas, em qualquer IRQL, e nunca é executada no processador de destino.
<= ALTO_NÍVEL
PEP_NOTIFY_PPM_INITIATE_WAKE
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino.
Notificação
O valor PEP_NOTIFY_PPM_INITIATE_WAKE.
Dados
Um ponteiro para uma estrutura.
Os comentários
Solicitação enviada ao PEP para que um processador especificado inicie seu despertar de um estado ocioso não interrompível.
O PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação ao PEP para que um processador especificado inicie sua saída de um estado ocioso não interruptível. O PEP deve retornar o status de ativação para o processador de destino usando NeedInterruptForCompletion. Ele retornará TRUE se o processador exigir uma interrupção para terminar de acordar do estado ocioso. Nesse caso, o PEP deve garantir que o processador de destino seja capaz de ser interrompido ao retornar do tratamento dessa notificação. Se o processador de destino já estiver em execução e/ou eventualmente sair do estado ocioso (e estiver em processo de fazer isso) sem a necessidade de interrupção gerada por software, NeedInterruptForCompletion deverá ser definido como FALSE.
Observe que o PEP não receberá essa notificação para o mesmo processador simultaneamente.
Para uma notificação PEP_NOTIFY_PPM_INITIATE_WAKE, a rotina AcceptProcessorNotification é chamada em qualquer IRQL, com interrupções desabilitadas e nunca é executada no processador de destino.
<= HIGH_LEVEL
PEP_NOTIFY_PPM_QUERY_FEEDBACK_COUNTERS
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_FEEDBACK_COUNTERS.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_FEEDBACK_COUNTERS.
Os comentários
Informa ao PEP que o PEP está sendo consultado pela lista de contadores de feedback que ele dá suporte.
O PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação na inicialização do processador para consultar o PEP para obter a lista de contadores de realimentação compatíveis.
Para uma notificação do tipo PEP_NOTIFY_PPM_QUERY_FEEDBACK_COUNTERS, a rotina AcceptProcessorNotification é sempre chamada no nível IRQL = PASSIVE_LEVEL.
PEP_NOTIFICAR_LEITURA_FEEDBACK_PPM
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_FEEDBACK_READ.
Dados
Um ponteiro para uma estrutura de PEP_PPM_FEEDBACK_READ.
Os comentários
Informa ao PEP que está sendo consultado sobre o valor atual de um contador de feedback.
A estrutura de gerenciamento de energia do Windows (PoFx) envia esta notificação quando deseja consultar o valor atual de um contador de feedback.
Essa notificação pode ser enviada com interrupções desabilitadas. Se o campo Affinitized do contador estiver definido, essa notificação será executada no processador de destino. Caso contrário, essa notificação poderá ser executada de qualquer processador.
Para uma notificação PEP_NOTIFY_PPM_FEEDBACK_READ, a rotina AcceptProcessorNotification pode ser chamada em IRQL = DISPATCH_LEVEL.
PEP_NOTIFY_PPM_QUERY_PERF_CAPABILITIES
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_PERF_CAPABILITIES.
Dados
Um ponteiro para uma estrutura de PEP_PPM_QUERY_PERF_CAPABILITIES.
Os comentários
Informa ao PEP que ele está sendo interrogado sobre as faixas de desempenho suportadas pela plataforma.
A PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação na inicialização do processador para consultar os intervalos de desempenho compatíveis com a plataforma. Os campos DomainId e DomainMembers da estrutura PEP_PPM_QUERY_PERF_CAPABILITIES são usados para expressar domínios de estado de desempenho para a plataforma. Cada processador é um membro de exatamente um domínio de estado de desempenho. O sistema operacional garantirá que todos os processadores em um domínio de desempenho alterem o desempenho juntos.
Para uma notificação PEP_NOTIFY_PPM_QUERY_PERF_CAPABILITIES, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_PERF_CONSTRAINTS
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino.
Notificação
O valor PEP_NOTIFY_PPM_PERF_CONSTRAINTS.
Dados
Um ponteiro para uma estrutura PEP_PPM_PERF_CONSTRAINTS.
Os comentários
Informa ao PEP que ele está sendo consultado sobre as restrições operacionais atuais do processador.
A PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação quando deseja inspecionar as restrições operacionais atuais do processador. O PEP inicia uma solicitação para que o sistema operacional avalie novamente as restrições de perf do processador executando um controle de energia com o código de controle GUID_PPM_PERF_CONSTRAINT_CHANGE. O InBuffer e o OutBuffer devem ser NULL.
O PEP deve aguardar até receber uma notificação PEP_DPM_DEVICE_STARTED para um processador antes de emitir uma transação de controle de energia para o processador.
Para uma notificação PEP_NOTIFY_PPM_PERF_CONSTRAINTS, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_PERF_SET
Essa notificação informa ao PEP que o desempenho operacional atual do processador deve ser alterado.
A seguir, descreva parâmetros para AcceptProcessorNotification.
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_PERF_SET.
Dados
Um ponteiro para uma estrutura de PEP_PPM_PERF_SET.
Os comentários
A PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação quando deseja alterar o desempenho operacional atual do processador. Essa notificação pode ser enviada durante a execução em qualquer processador.
Para uma notificação do tipo PEP_NOTIFY_PPM_PERF_SET, a rotina AcceptProcessorNotification é sempre chamada em IRQL = DISPATCH_LEVEL.
PEP_NOTIFY_PPM_PARK_SELECTION
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_PARK_SELECTION.
Dados
Um ponteiro para uma estrutura PEP_PPM_PARK_SELECTION.
Os comentários
Informa ao PEP que o sistema operacional gostaria que ele selecionasse um conjunto preferencial de núcleos de processador para estacionar.
A PoFx (estrutura de gerenciamento de energia do Windows) envia essa notificação para instruir o PEP a selecionar um conjunto preferencial de núcleos para estacionar.
O PEP_NOTIFY_PPM_PARK_SELECTION foi sobrecarregado para executar duas funções:
Permita que o PEP selecione quais processadores (do conjunto de todos os processadores no sistema) devem estar estacionados e quais devem ser desparcados. Permita que o PEP selecione quais processadores (do conjunto de todos os processadores desparkados) devem receber interrupções e quais não devem recebê-las. O Windows não fornece um meio para o PEP distinguir qual das duas ações o sistema operacional está realizando. Como resultado, quando o PEP recebe essa notificação com um determinado conjunto de entradas (número de processadores liberados adicionais e PoPreference), ele deve fornecer uma saída consistente (PepPreference), a menos que algum evento externo cause uma alteração na preferência do PEP.
Para a notificação PEP_NOTIFY_PPM_PARK_SELECTION, a rotina AcceptProcessorNotification é sempre chamada no nível IRQL = DISPATCH_LEVEL.
PEP_NOTIFY_PPM_CST_STATES
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_CST_STATES.
Dados
Um ponteiro para uma estrutura PEP_PPM_CST_STATES.
Os comentários
Enviado ao PEP para indicar o conjunto de C-states definidos pelo ACPI, para os quais o processador oferece suporte.
A PoFx (estrutura de gerenciamento de energia do Windows) envia essa notificação ao PEP para indicar o conjunto de estados C definidos pelo ACPI com suporte pelo processador. Essa notificação será enviada uma vez antes da primeira vez que o PEP receber a notificação PEP_NOTIFY_PPM_QUERY_IDLE_STATES_V2 de um processador e, novamente, sempre que o processador receber um Notify(0x81) indicando que o objeto _CST foi alterado.
Para uma notificação PEP_NOTIFY_PPM_CST_STATES, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor de PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_PLATFORM_STATES.
Os comentários
Enviado na inicialização do processador para consultar o número de estados ociosos da plataforma aos quais o PEP dá suporte.
A estrutura de gerenciamento de energia do Windows (PoFx) envia essa notificação ao PEP na inicialização do processador para consultar o número de estados ociosos da plataforma que ela dá suporte. Essa notificação é enviada uma vez após a inicialização. Depois de retornar um número positivo de estados da plataforma, o PEP pode então começar a selecionar estados de inatividade da plataforma durante as transições de inatividade do processador.
Para uma notificação PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_QUERY_LP_SETTINGS
Notificação
O valor PEP_NOTIFY_PPM_QUERY_LP_SETTINGS.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_LP_SETTINGS.
Os comentários
Para enviar uma notificação PEP_NOTIFY_PPM_QUERY_LP_SETTINGS, o PoFx chama a função de retorno AcceptProcessorNotification do PEP. Nessa chamada, o valor do parâmetro de notificação é PEP_NOTIFY_PPM_QUERY_LP_SETTINGS e o parâmetro Data aponta para uma estrutura de PEP_PPM_QUERY_LP_SETTINGS.
Para uma notificação PEP_NOTIFY_PPM_QUERY_LP_SETTINGS, a rotina AcceptProcessorNotification é sempre chamada com IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_QUERY_IDLE_STATES_V2
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_IDLE_STATES_V2.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_IDLE_STATES_V2.
Os comentários
Usado na inicialização do processador para consultar a lista de estados ociosos aos quais o PEP dá suporte.
A PoFx (estrutura de gerenciamento de energia do Windows) envia essa notificação ao PEP na inicialização do processador para consultar a lista de estados ociosos aos quais ele dá suporte.
O membro Count especifica o tamanho da matriz de estado ocioso. O driver do processador consultará o número de estados ociosos com PEP_NOTIFY_PPM_QUERY_CAPABILITIES antes de enviar essa notificação.
O PEP preenche o array IdleStates com informações sobre cada estado ocioso que ele suporta. Os estados ociosos devem ser listados em ordem de decrescente consumo de energia/crescente custo de transição. "Não é necessário que o PEP forneça a mesma lista de estados ociosos para cada processador."
Para uma notificação PEP_NOTIFY_PPM_QUERY_IDLE_STATES_V2, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_PLATFORM_STATE.
Os comentários
Enviado ao PEP para consultar as propriedades de um estado ocioso único da plataforma.
A PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação na inicialização do processador para consultar as propriedades de um único estado ocioso da plataforma.
O parâmetro StateIndex da estrutura PEP_PPM_QUERY_PLATFORM_STATE especifica o índice do estado ocioso da plataforma que está sendo consultado. O driver do processador usará PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES para consultar o número de estados ociosos da plataforma com suporte antes de enviar essa notificação. Em seguida, o driver do processador enviará uma notificação PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE para cada estado ocioso da plataforma. O driver do processador aguardará para enviar essa notificação até que todos os processadores tenham se registrado com o PEP.
O PEP preenche a estrutura de estados com informações sobre o estado inativo da plataforma. Os estados ociosos da plataforma devem ser listados em ordem de decrescente consumo de energia/crescente custo de transição.
Para uma notificação PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_TEST_IDLE_STATE
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_TEST_IDLE_STATE.
Dados
Um ponteiro para uma estrutura PEP_PPM_TEST_IDLE_STATE.
Os comentários
Usado para testar se o processador especificado e o estado ocioso da plataforma podem ser inseridos no processador especificado.
A PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação para testar se o processador especificado e o estado ocioso da plataforma podem ser inseridos no processador especificado. Se o estado de inatividade puder ser inserido, o PEP preenche o código de veto PEP_IDLE_VETO_NONE e conclui a transição de inatividade. Se a transição ociosa não puder ser concluída por algum motivo, o PEP preencherá um código de veto diferente de zero.
Códigos de veto importantes no intervalo 0x80000000 para 0xffffffff são reservados para uso do sistema operacional e podem não ser usados.
Quando essa notificação é enviada, o sistema operacional já validou que todas as restrições associadas ao processador selecionado ou ao estado ocioso da plataforma foram atendidas, incluindo restrições de dispositivo e processador para uma transição ociosa da plataforma.
Essa notificação será enviada antes que o sistema operacional tente inserir qualquer estado ocioso de processador ou plataforma, exceto pelo estado ocioso do processador com o índice 0, que sempre deve ser inserível. Concluir esta notificação com PEP_IDLE_VETO_NONE não garante que o sistema operacional entre no estado ocioso indicado. Essa notificação é enviada com interrupções desativadas. Essa notificação é sempre executada no processador de destino.
Para uma notificação PEP_NOTIFY_PPM_TEST_IDLE_STATE, a rotina AcceptProcessorNotification é chamada com interrupções desabilitadas.
PEP_NOTIFY_PPM_IDLE_PRE_EXECUTE
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_IDLE_PRE_EXECUTE.
Dados
Um ponteiro para uma estrutura PEP_PPM_IDLE_EXECUTE ou PEP_PPM_IDLE_EXECUTE_V2.
Os comentários
Enviado para o PEP para preparar o sistema para a transição para o estado ocioso especificado.
A PoFx (estrutura de gerenciamento de energia do Windows) envia essa notificação ao PEP para preparar o sistema para fazer a transição para o estado ocioso especificado. Após a conclusão bem-sucedida dessa notificação, o sistema operacional fará a transição do processador para ocioso inserindo o estado C associado. Se o PEP não conseguir preparar o sistema para inserir o estado ocioso do processador (e da plataforma), ele deverá retornar um status de erro.
Quando o hipervisor estiver habilitado, o PEP receberá essa notificação somente na entrada de um estado ocioso da plataforma e com o campo ProcessorState definido como PEP_PROCESSOR_IDLE_STATE_UNKNOWN.
Ao usar a interface de estado ocioso coordenada, o sistema operacional usa a estrutura PEP_PPM_IDLE_EXECUTE_V2 que inclui os campos CoordinatedStateCount e CoordinatedState com a lista de estados ociosos coordenados que serão inseridos pela transição ociosa. O campo PlatformState especificará o estado ocioso coordenado mais profundo da plataforma que está sendo acessado, se houver.
Ao não usar a interface de estado ocioso coordenada, o sistema operacional usa a estrutura PEP_PPM_IDLE_EXECUTE.
Para uma notificação PEP_NOTIFY_PPM_IDLE_PRE_EXECUTE, a rotina AcceptProcessorNotification é chamada com interrupções desabilitadas e sempre é executada no processador de destino.
PEP_NOTIFY_PPM_UPDATE_PLATFORM_STATE
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_UPDATE_PLATFORM_STATE.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_PLATFORM_STATE.
Os comentários
Informa ao PEP que um processador recebeu Notify(0x81) para atualizar as características de um estado ocioso da plataforma.
A estrutura de gerenciamento de energia do Windows (PoFx) envia esta notificação quando um processador recebe Notify(0x81) para atualizar as características de um estado inativo da plataforma. Essa notificação é enviada uma vez para cada estado ocioso da plataforma. Se o PEP não aceitar a notificação (ou seja, retornar FALSE de seu callback AcceptProcessorNotification), então a definição anterior do estado de inatividade da plataforma, da notificação de PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE ou PEP_NOTIFY_PPM_UPDATE_PLATFORM_STATE mais recentemente aceita, será preservada.
Essa notificação usa o mesmo buffer de dados que a notificação de PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE.
Para uma notificação PEP_NOTIFY_PPM_UPDATE_PLATFORM_STATE, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE_RESIDENCIES
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE_RESIDENCIES.
Dados
Um ponteiro para uma estrutura PEP_PPM_PLATFORM_STATE_RESIDENCIES.
Os comentários
Informa ao PEP que ele deve capturar o tempo real acumulado gasto em cada estado ocioso da plataforma desde a inicialização.
A PoFx (estrutura de gerenciamento de energia do Windows) envia essa notificação ao PEP para capturar o tempo real acumulado gasto em cada estado ocioso da plataforma desde a inicialização. Dessa forma, essa consulta só é aplicável a plataformas em que o hardware subjacente pode decidir de forma autônoma inserir um estado ocioso de plataforma diferente daquele solicitado pelo sistema operacional. Os valores retornados são usados para fins de diagnóstico e identificam quando a percepção do sistema operacional da permanência no estado ocioso da plataforma difere significativamente do que a plataforma realmente conseguiu.
A contagem especifica o número de elementos na matriz Estados, em que o índice do elemento corresponde ao índice de estado ocioso da plataforma. O PEP preencherá cada elemento com a contagem real de residência e transição do estado correspondente.
Observe que os valores acumulados capturados por essa consulta devem corresponder somente aos períodos em que o PEP (ou driver de processador) realmente executou uma transição de estado ocioso da plataforma. Isso garantirá que a comparação entre a residência calculada do sistema operacional e a residência real seja significativa.
Para uma notificação PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE_RESIDENCIES, a rotina AcceptProcessorNotification pode ser chamada em qualquer IRQL.
PEP_NOTIFY_PPM_QUERY_VETO_REASONS
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_VETO_REASONS.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_VETO_REASONS.
Os comentários
Usado para consultar o número de motivos de veto exclusivos que o PEP usa nos retornos de chamada ProcessorIdleVeto e PlatformIdleVeto.
A estrutura de gerenciamento de energia do Windows (PoFx) envia essa notificação na inicialização do processador para consultar o número de razões de veto distintas que o PEP usa nos callbacks ProcessorIdleVeto e PlatformIdleVeto. Essa notificação é opcional e pode ser ignorada pelo PEP.
Caso aceito, o PEP poderá usar as razões de veto de 1 até VetoReasonCount, inclusive, para vetar qualquer processador, plataforma ou estado ocioso coordenado. O PEP não tem permissão para usar razões de veto maiores que VetoReasonCount. O sistema operacional alocará previamente estruturas de rastreamento de veto e, quando usadas com PEP_NOTIFY_PPM_ENUMERATE_BOOT_VETOES, garantirá que todos os retornos de chamada de veto de processador, plataforma e estado coordenado terão êxito.
Se essa notificação não for aceita pelo PEP, o PEP poderá usar os retornos de chamada ProcessorIdleVeto e PlatformIdleVeto com qualquer motivo de veto permitido. O sistema operacional não garante que os retornos de chamada não falharão devido a falhas de alocação ou outros problemas.
Para uma notificação PEP_NOTIFY_PPM_QUERY_VETO_REASONS, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_QUERY_VETO_REASON
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_VETO_REASON.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_VETO_REASON.
Os comentários
Enviado ao PEP para consultar informações sobre um motivo de veto específico.
A PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação na inicialização do processador para consultar informações sobre um motivo de veto específico. Essa notificação é enviada duas vezes por cada motivo de veto, uma vez com um buffer NULLName para recuperar o tamanho de alocação necessário para Nome e uma vez com um buffer não NULLName para preencher o conteúdo de Nome. O nome deve ser uma cadeia de caracteres legível pelo ser humano que indica qual condição esse motivo de veto representa. Ferramentas de depuração, como WPA e o depurador de kernel, exibirão o Nome ao diagnosticar por que um estado ocioso não foi inserido.
Para uma notificação PEP_NOTIFY_PPM_QUERY_VETO_REASON, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_ENUMERATE_BOOT_VETOES
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_ENUMERATE_BOOT_VETOES.
Dados
O valor do ponteiro NULL.
Os comentários
Informa ao PEP que o sistema operacional está pronto para aceitar chamadas para ProcessorIdleVeto ou PlatformIdleVeto.
A PoFx (estrutura de gerenciamento de energia do Windows) envia essa notificação após a inicialização do processador, mas antes da primeira entrada ociosa para indicar que o sistema operacional está pronto para aceitar chamadas para ProcessorIdleVeto ou PlatformIdleVeto. O PEP pode enumerar quaisquer vetos de tempo de inicialização no contexto dessa notificação e o sistema operacional garante que eles entrarão em vigor antes da primeira tentativa de selecionar um processador, uma plataforma ou um estado ocioso coordenado. Esta notificação não tem nenhum parâmetro de dados associado.
Para uma notificação PEP_NOTIFY_PPM_ENUMERATE_BOOT_VETOES, a rotina AcceptProcessorNotification é sempre chamada no nível de IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_PARK_MASK
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_PARK_MASK.
Dados
Um ponteiro para uma estrutura PEP_PPM_PARK_MASK.
Os comentários
Informa o PEP da máscara de estacionamento principal atual.
A PoFx (estrutura de gerenciamento de energia do Windows) envia essa notificação em runtime para informar o PEP sobre a máscara de estacionamento principal atual.
Para uma notificação do tipo PEP_NOTIFY_PPM_PARK_MASK, a rotina AcceptProcessorNotification é chamada com IRQL = DISPATCH_LEVEL e pode ser enviada enquanto está sendo executada em qualquer processador.
PEP_NOTIFY_PPM_PARK_SELECTION_V2
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_PARK_SELECTION_V2.
Dados
Um ponteiro para uma estrutura PEP_PPM_PARK_SELECTION_V2.
Os comentários
Informa ao PEP que o sistema operacional gostaria que ele selecionasse um conjunto preferencial de núcleos para estacionar ou afastar as interrupções. Se essa notificação não for aceita, o sistema operacional retornará ao envio da notificação de PEP_NOTIFY_PPM_PARK_SELECTION.
Ao executar o algoritmo de verificação de desempenho, o sistema operacional (OS) pode enviar a notificação PEP_NOTIFY_PPM_PARK_SELECTION_V2 várias vezes: zero ou mais vezes para cada classe de eficiência de núcleo em cada domínio de estacionamento, e zero ou mais vezes para o gerenciamento de interrupções. Para ajudar o PEP a fornecer uma resposta consistente ao sistema operacional para uma verificação de desempenho, o sistema operacional fornecerá a marca de tempo do momento de interrupção da avaliação de verificação de desempenho que motivou a notificação. Todas as notificações de seleção de parque resultantes de uma avaliação de verificação de desempenho terão o mesmo carimbo de data/hora. Observe que os campos restantes (Count, AdditionalUnparkedProcessors, EvaluationType e Processors) podem variar para notificações enviadas durante a mesma avaliação de verificação de desempenho, o PEP não pode assumir que eles permanecerão os mesmos.
Para a notificação PEP_NOTIFY_PPM_PARK_SELECTION, a rotina AcceptProcessorNotification é sempre chamada no nível IRQL = DISPATCH_LEVEL.
PEP_NOTIFY_PPM_PERF_CHECK_COMPLETE
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_PERF_CHECK_COMPLETE.
Dados
Um ponteiro para uma estrutura PEP_PPM_PERF_CHECK_COMPLETE.
Os comentários
Informa ao PEP que a avaliação periódica de verificação de desempenho foi concluída.
O framework de gerenciamento de energia do Windows (PoFx) envia essa notificação em tempo de execução para informar o PEP que a avaliação de verificação periódica foi concluída.
Para uma notificação PEP_NOTIFY_PPM_PERF_CHECK_COMPLETE, a rotina AcceptProcessorNotification é chamada em IRQL = DISPATCH_LEVEL e pode ser enviada durante a execução em qualquer processador.
PEP_NOTIFY_PPM_QUERY_COORDINATED_DEPENDENCY
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_COORDINATED_DEPENDENCY.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_COORDINATED_DEPENDENCY.
Os comentários
Enviado ao PEP para consultar as dependências de cada estado de inatividade coordenado.
A Estrutura de Gerenciamento de Energia do Windows (PoFx) envia essa notificação durante a inicialização do processador para consultar o PEP sobre as dependências de cada estado ocioso coordenado. O sistema operacional alocará elementos MaximumDependencySize para a matriz Dependencies. O PEP deve preencher o número de elementos da matriz que foram usados em DependencySizeUsed.
Se a dependência que está sendo expressa estiver em um processador, PEP preencherá o campo TargetProcessor com o POHANDLE do processador de destino. Em seguida, o campo ExpectedState refere-se ao índice de um estado ocioso do processador no processador de destino.
Se a dependência expressa estiver relacionada a outros estados ociosos coordenados, o PEP preencherá NULL para o TargetProcessor. Em seguida, o campo ExpectedState refere-se ao índice de um estado ocioso coordenado.
Cada dependência lista um menu de opções que o sistema operacional pode usar para satisfazer a dependência. Ao ficar ocioso, o sistema operacional tentará satisfazer a dependência verificando as condições de cada um, do índice mais alto ao menor índice. Se as condições de uma dependência forem atendidas, o sistema operacional considerará a dependência atendida. Se nenhuma das condições puder ser atendida, a dependência não será atendida e o estado ocioso coordenado pode não ser alcançado.
Para uma notificação PEP_NOTIFY_PPM_QUERY_COORDINATED_DEPENDENCY, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_QUERY_COORDINATED_STATE_NAME
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_COORDINATED_STATE_NAME.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_STATE_NAME.
Os comentários
Enviado ao PEP para consultar informações sobre um estado ocioso coordenado ou de inatividade específica da plataforma.
O PoFx (estrutura de gerenciamento de energia do Windows) envia essa notificação na inicialização do processador para consultar o PEP e obter informações sobre um estado específico de ociosidade coordenada ou de plataforma. Essa notificação é enviada duas vezes para cada estado: uma vez com um buffer de Nome NULL para obter o tamanho de alocação necessário para Nome, e uma vez com um buffer de Nome não NULL para preencher o conteúdo de Nome. O nome deve ser uma cadeia de caracteres legível por humanos que indica o nome do estado ocioso coordenado. Os estados ociosos coordenados devem ter nomes exclusivos, exceto em sistemas de vários clusters, em que os nomes de estados equivalentes em clusters diferentes podem ser os mesmos. Ferramentas de depuração, como o WPA e o depurador de kernel, exibirão o Nome em diagnósticos que se referem a esse estado ocioso coordenado/de plataforma.
Para uma notificação PEP_NOTIFY_PPM_QUERY_COORDINATED_STATE_NAME, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_QUERY_COORDINATED_STATES
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_COORDINATED_STATES.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_COORDINATED_STATES.
Os comentários
Usado na inicialização do processador para consultar as propriedades de todos os estados ociosos coordenados.
A PoFx (Estrutura de Gerenciamento de Energia do Windows) envia essa notificação ao PEP na inicialização do processador para consultar as propriedades de todos os estados ociosos coordenados. Essa notificação é enviada pouco antes de o PEP ter enviado a notificação PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE. Se aceito, o PEP usa a interface de estado ocioso coordenado e não receberá nenhuma notificação de PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE. Se não for aceito, o PEP está usando a interface de estado ocioso da plataforma e o sistema operacional retornará ao uso da notificação de PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE para consultar estados ociosos coordenados.
O sistema operacional aguardará para enviar essa notificação até que todos os processadores tenham se registrado com o PEP.
O PEP preenche a estrutura de estado com informações sobre os estados ociosos coordenados.
A ordem dos estados ociosos coordenados deve seguir as seguintes regras:
Dois estados coordenados que representam estados de energia diferentes para a mesma unidade funcional devem ser listados em ordem desde o mais leve (consumo de energia/menor custo de transição) até o mais profundo (menor consumo de energia/maior custo de transição). Os estados ociosos coordenados só podem depender de outros estados ociosos coordenados com um índice inferior. Não há ordem necessária entre dois estados ociosos coordenados desarticulados (ou seja, dois estados ociosos coordenados que dependem de conjuntos de processadores desarticulados).
Para uma notificação PEP_NOTIFY_PPM_QUERY_COORDINATED_STATES, a rotina AcceptProcessorNotification é sempre chamada em IRQL igual a PASSIVE_LEVEL.
PEP_NOTIFY_PPM_QUERY_PROCESSOR_STATE_NAME
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_PROCESSOR_STATE_NAME.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_STATE_NAME.
Os comentários
Enviado ao PEP para consultar informações sobre um estado ocioso específico do processador.
A PoFx (estrutura de gerenciamento de energia do Windows) envia essa notificação na inicialização do processador para consultar o PEP para obter informações sobre um estado ocioso específico do processador. Essa notificação é enviada duas vezes para cada estado: uma vez com um buffer Nome NULL para recuperar o tamanho de alocação necessário para Nome, e outra com um buffer Nome não-NULL para preencher o conteúdo de Nome. O nome deve ser uma cadeia de caracteres legível por humanos que indica o nome do estado ocioso coordenado. Os estados ociosos coordenados devem ter nomes exclusivos, exceto em sistemas de vários clusters, em que os nomes de estados equivalentes em clusters diferentes podem ser os mesmos. Ferramentas de depuração, como o WPA e o depurador de kernel, exibirão o Nome em diagnósticos que se referem a esse estado ocioso coordenado/de plataforma.
Para uma notificação PEP_NOTIFY_PPM_QUERY_PROCESSOR_STATE_NAME, a rotina AcceptProcessorNotification é sempre chamada em IRQL = PASSIVE_LEVEL.
PEP_NOTIFY_PPM_ENTER_SYSTEM_STATE
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_ENTER_SYSTEM_STATE.
Dados
Um ponteiro para uma estrutura PEP_PPM_ENTER_SYSTEM_STATE.
Os comentários
PEP_NOTIFY_PPM_ENTER_SYSTEM_STATE é uma notificação opcional que informa o PEP de que o sistema está prestes a entrar em um estado de energia do sistema. Essa notificação é enviada a todos os processadores simultaneamente depois que o sistema concluir todo o trabalho de nível passivo que faz a transição do processador para o estado de energia do sistema.
Essa notificação é enviada em DISPATCH_LEVEL, com todos os processadores em expedição. Essa notificação é sempre executada no processador de destino.
Observe que o PEP não deve enfileirar nenhum trabalho desta notificação. Os processadores não processarão itens de trabalho, DPCs etc. depois que essa notificação for enviada.
DISPATCH_LEVEL
NOTIFICAR_PPM_DESEMPENHO_AJUSTAR_ESTADO
A seguir, descreva parâmetros para AcceptProcessorNotification.
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_PERF_SET_STATE.
Dados
Um ponteiro para uma estrutura PEP_PPM_PERF_SET_STATE.
Os comentários
Usado em runtime para definir o estado de desempenho operacional atual do processador. Se o PEP tiver hardware autônomo capaz de aumentar/reduzir o desempenho sem uma solicitação de conjunto de desempenho, ele deverá limitar as solicitações de hardware autônomo com base no estado mínimo de desempenho e/ou no estado máximo de desempenho e atingir o estado de desempenho desejado. Caso contrário, ele deverá ser executado exatamente no estado de desempenho desejado.
Esta notificação é enviada em DISPATCH_LEVEL. Se os estados de desempenho direcionados pelo agendador estiverem em uso, o PEP deverá seguir as restrições na seção 3.3.6 ao processar essa notificação. Ele pode ser enviado durante a execução em qualquer processador.
PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_DISCRETE_PERF_STATES.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_DISCRETE_PERF_STATES. Usado na inicialização do processador para consultar a lista de estados de desempenho discretos aos quais o PEP dá suporte, se a notificação PEP_NOTIFY_PPM_QUERY_CAPABILITIES indicar suporte para estados de desempenho discretos.
A lista de estados de desempenho deve ser ordenada da mais rápida para a mais lenta, com cada estado de desempenho mapeado a um valor de desempenho distinto. A lista de estado de desempenho também deve incluir uma entrada que corresponda a cada valor de desempenho listado na notificação de PEP_NOTIFY_PPM_QUERY_PERF_CAPABILITIES. Essa notificação é enviada em PASSIVE_LEVEL. Ele pode ser enviado durante a execução em qualquer processador.
PEP_NOTIFY_PPM_QUERY_DOMAIN_INFO
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_QUERY_DOMAIN_INFO.
Dados
Um ponteiro para uma estrutura PEP_PPM_QUERY_DOMAIN_INFO.
Os comentários
Uma notificação opcional que consulta informações sobre um domínio de desempenho. Essa notificação é enviada em PASSIVE_LEVEL. Ele pode ser enviado durante a execução em qualquer processador.
PEP_NOTIFY_PPM_RESUME_FROM_SYSTEM_STATE
Manejar
Uma estrutura PEPHANDLE que contém o identificador de dispositivo do PEP para o processador de destino. Se a notificação não for direcionada a um processador específico, isso será NULL.
Notificação
O valor PEP_NOTIFY_PPM_RESUME_FROM_SYSTEM_STATE.
Dados
Um ponteiro para uma estrutura PEP_PPM_RESUME_FROM_SYSTEM_STATE.
Os comentários
Uma notificação opcional que notifica o PEP de que o sistema acabou de retomar de um estado de energia do sistema. Essa notificação é enviada a todos os processadores simultaneamente pouco antes de os processadores serem liberados para retomar o trabalho de nível passivo. Essa notificação é enviada em DISPATCH_LEVEL, com todos os processadores em expedição. Essa notificação é sempre executada no processador de destino.