Partilhar via


Suporte para Estados de Energia Funcionais

A partir do Windows 8, o gerenciador de energia inclui a estrutura de gerenciamento de energia em tempo de execução (PoFx). O PoFx suporta a gestão de energia e relógio ao nível do componente (ou subdispositivo).

A partir da versão 1.11 do KMDF, os drivers KMDF podem aproveitar o controle de potência refinado que o PoFx oferece. Em particular, um driver KMDF pode definir vários componentes lógicos dentro de um único dispositivo, cada um dos quais pode ser gerenciado de forma independente.

Por exemplo, um driver de função pode definir um conjunto exclusivo de estados de energia funcional para cada componente lógico de um dispositivo. Semelhante aos estados de energia do dispositivo e do sistema, F0 indica que o componente está totalmente ligado, enquanto os estados opcionais F1, F2 e assim por diante indicam estados de energia progressivamente mais baixos. Para suportar estados Fx, um driver deve ser o proprietário da política de energia do dispositivo.

A tabela a seguir resume o suporte do framework para diferentes cenários de estados funcionais de energia.

Tipo Suporte KMDF Suporte UMDF Quando usar/como implementar

Componente único, estado único (F0)

Suportado

Suportado

Quando você deseja que o plug-in do mecanismo de alimentação (PEP) determine o valor de tempo limite de inatividade e seu driver tem apenas um estado F.

Chame WdfDeviceAssignS0IdleSettings com IdleTimeoutType = SystemManagedIdleTimout ou SystemManagedIdleTimoutWithHint.

Componente único, vários estados (F0, F1, F2...)

Suportado

Não suportado

Quando o controlador tiver mais de um estado F.

Nesse caso, o KMDF gere a maioria das interações com o PoFx.

Para obter o código de exemplo, consulte os exemplos de drivers PoFx.

Vários componentes, estados únicos ou múltiplos

Suportado usando interfaces WDM

Não suportado

Quando o driver tem vários componentes. Nesse caso, tem de usar as interfaces do PoFx diretamente.

Para obter o código de exemplo, consulte controladores de exemplo PoFx.

Como o KMDF adiciona uma abstração mínima sobre o PoFx, é útil ter uma compreensão básica do PoFx antes de escrever seu driver. Assim, recomendamos que você leia Visão geral da estrutura de gerenciamento de energia antes de ler estes tópicos.