Função WdfDeviceInitSetPowerNotPageable (wdfdevice.h)

[Aplica-se somente ao KMDF]

O método WdfDeviceInitSetPowerNotPageable informa ao power manager que o driver não acessará dados pageable enquanto o sistema estiver fazendo a transição entre um estado de suspensão e o estado de trabalho (S0).

Sintaxe

void WdfDeviceInitSetPowerNotPageable(
  [in] PWDFDEVICE_INIT DeviceInit
);

Parâmetros

[in] DeviceInit

Um ponteiro fornecido pelo chamador para uma estrutura WDFDEVICE_INIT .

Valor retornado

Nenhum

Comentários

Se o driver de função ou o motorista do ônibus chamar WdfDeviceInitSetPowerNotPageable, o dispositivo do arquivo de paginação do sistema poderá não estar em seu estado de trabalho (D0) quando o dispositivo do driver entrar em um estado de baixa potência ou retornar ao estado de trabalho. Portanto, durante as transições de energia do dispositivo, o driver não deve executar nenhuma operação que possa fazer com que o sistema operacional acesse o arquivo de paginação. Essas operações incluem acessar arquivos, o registro ou o pool de páginas.

Por padrão, a estrutura permite o acesso a dados pageable para drivers de função. A estrutura usa a configuração do dispositivo pai para cada dispositivo filho que um motorista de ônibus enumera, a menos que o motorista do ônibus chame WdfDeviceInitSetPowerPageable ou WdfDeviceInitSetPowerNotPageable para o dispositivo filho. Se você escrever um driver de ônibus que chame WdfDeviceInitSetPowerPageable para um dispositivo filho, nenhum driver na pilha do dispositivo filho poderá chamar WdfDeviceInitSetPowerNotPageable.

Chamar WdfDeviceInitSetPowerPageable ou WdfDeviceInitSetPowerNotPageable de um driver de filtro não tem efeito. A estrutura usa a configuração especificada pelo driver inferior seguinte.

A maioria dos drivers não precisa chamar WdfDeviceInitSetPowerPageable ou WdfDeviceInitSetPowerNotPageable. Em vez disso, você deve permitir que a estrutura use a configuração padrão apropriada para o driver. No entanto, o driver deve chamar WdfDeviceInitSetPowerNotPageable se o driver fizer parte de uma pilha de driver que não deve acessar dados pagináveis durante transições de energia (como a pilha de armazenamento ou a pilha de vídeo) ou se o driver for um driver de ônibus que enumera dispositivos que podem ser dispositivos de armazenamento ou vídeo.

Se o driver chamar WdfDeviceInitSetPowerNotPageable, ele deverá fazê-lo antes de chamar WdfDeviceCreate.

Para obter mais informações sobre como chamar WdfDeviceCreate, consulte Creating a Framework Device Object.

Exemplos

O exemplo de código a seguir informa ao power manager que um driver não acessará dados pageable enquanto o sistema estiver fazendo a transição entre um estado de suspensão e o estado de trabalho (S0).

WdfDeviceInitSetPowerNotPageable(DeviceInit);

Requisitos

   
Plataforma de Destino Universal
Versão mínima do KMDF 1,0
Cabeçalho wdfdevice.h (include Wdf.h)
Biblioteca Wdf01000.sys (consulte o Controle de Versão da Biblioteca de Estruturas).)
IRQL <= DISPATCH_LEVEL
Regras de conformidade DDI ChildDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf)

Confira também

WdfDeviceInitSetPowerPageable