Compartilhar via


Melhorando o desempenho de inicialização do sistema

Um dos recursos que os usuários de computador solicitam com mais frequência são tempos de inicialização rápidos de estados de desligar, ficar em espera e hibernação. Para reduzir o tempo de inicialização, o Windows usa várias técnicas, que incluem o seguinte:

  • Remova, da lista de operações de inicialização, processos e serviços que podem ser adiados até que a inicialização seja concluída.

  • Pré-busca de páginas de memória de acordo com o padrão de solicitações para carregar essas páginas em inicializações anteriores do sistema.

  • Sobreponha a inicialização do dispositivo com as operações de E/S de disco necessárias para carregar o sistema operacional.

  • Habilite as inicializações de dispositivo a serem executadas em paralelo em vez de sequencialmente.

Um driver de modo kernel deve seguir as seguintes etapas para melhorar o desempenho do processo de inicialização:

  • Quando um computador é iniciado a partir de um estado de desligar (inicialização a frio), o driver do dispositivo deve fazer apenas o que é necessário para inicializar o dispositivo e adiar todas as outras operações de dispositivo até que a inicialização seja concluída. Limite o código de inicialização do driver às operações necessárias para deixar o dispositivo pronto para uso.

  • Quando um computador é iniciado do estado de espera ou hibernação (inicialização quente), um driver que deve ser inicializado antes da conclusão da inicialização deve usar threads de trabalho de alta prioridade e itens de trabalho de fila críticos para descarregar as pequenas tarefas necessárias. Caso contrário, o thread do driver poderá ficar sem tempo de processador por threads não relacionados e a inicialização será atrasada.

  • Durante uma inicialização morna de espera ou hibernação, a rotina de DPC de um driver ou o código de inicialização executado em DISPATCH_LEVEL, devem evitar tempos de execução longos que impedem a execução de outros drivers. Para obter mais informações, consulte Compartilhando recursos do processador durante a inicialização de um estado de Low-Power.

  • Durante uma inicialização morna de espera ou hibernação, um driver de dispositivo funcional deve concluir um IRP de set-power S0 imediatamente e, em seguida, solicitar um IRP de set-power D0. Se o driver concluir imediatamente o IRP de set-power S0, o sistema operacional poderá concluir a inicialização enquanto o driver reinicializa o dispositivo como uma tarefa em segundo plano. Para obter mais informações, consulte Inicialização rápida de um estado de Low-Power.

  • Um driver de dispositivo não deve manter um bloqueio de rotação por mais de um breve tempo, especialmente durante uma inicialização fria de um estado de desligar. Caso contrário, outras inicializações de dispositivo não podem ocorrer em paralelo.

Esta seção inclui os tópicos a seguir:

Compartilhando recursos do processador durante a inicialização de um estado de Low-Power

Inicialização rápida de um estado de Low-Power