Estados de energia do sistema
Para o usuário, um sistema de computador parece estar ativado ou desativado. Não há outros estados detectáveis. No entanto, o sistema dá suporte a vários estados de energia que correspondem aos estados de energia definidos na especificação ACPI (Advanced Configuration and Power Interface). Também há variações desses estados, como suspensão híbrida e inicialização rápida. Este artigo apresenta esses estados e descreve como eles se relacionam entre si.
Observação
Os integradores do sistema e os desenvolvedores que criam drivers ou aplicativos com um serviço do sistema devem ter um cuidado especial com problemas de qualidade do driver, como vazamentos de memória. Embora a qualidade do driver sempre tenha sido importante, o tempo de atividade entre as reinicializações de kernel pode ser significativamente maior do que nas versões anteriores do sistema operacional porque o kernel, os drivers e os serviços são preservados e restaurados, não reiniciados, em suspensões e desligamentos iniciados pelo usuário.
A tabela a seguir lista os estados de energia do ACPI do maior para o menor consumo de energia.
Estado de energia | Estado ACPI | Descrição |
---|---|---|
Funcionando | S0 | O sistema é totalmente utilizável. Os componentes de hardware que não estão em uso podem economizar energia inserindo um estado de energia mais baixo. |
Suspensão (Espera Moderna) | S0 ocioso de baixa potência | Alguns sistemas SoC dão suporte a um estado ocioso de baixa potência conhecido como Espera Moderna. Nesse estado, o sistema pode mudar muito rapidamente de um estado de baixa potência para um estado de alta potência em resposta a eventos de hardware e rede. Os sistemas que dão suporte ao Modo de Espera Moderno não usam o S1-S3. |
Modo de suspensão |
S1 S2 S3 |
O sistema parece estar desativado. A quantidade de energia consumida nos estados S1-S3 é menor que S0 e mais de S4.
O S3 consome menos energia do que o S2 e o S2 consome menos energia do que o S1. Os sistemas normalmente dão suporte a um desses três estados, não aos três. Nos estados S1-S3, a memória volátil é mantida atualizada para manter o estado do sistema. Alguns componentes permanecem ligados para que o computador possa ativar a entrada do teclado, LAN ou um dispositivo USB. A suspensão híbrida, usada em áreas de trabalho, é onde um sistema usa um arquivo de hibernação com S1-S3. O arquivo de hibernação salva o estado do sistema caso o sistema perca energia enquanto estiver em suspensão. Nota: Os sistemas SoC que dão suporte ao Modo de Espera Moderno não usam o S1-S3. |
Hibernar | S4 | O sistema parece estar desativado. O consumo de energia é reduzido para o nível mais baixo. O sistema salva o conteúdo da memória volátil em um arquivo de hibernação para preservar o estado do sistema. Alguns componentes permanecem ligados para que o computador possa ativar a entrada do teclado, LAN ou um dispositivo USB. O contexto de trabalho poderá ser restaurado se ele estiver armazenado em mídia nãovolatile. Inicialização rápida é onde o usuário é conectado antes da criação do arquivo de hibernação. Isso permite um arquivo de hibernação menor, mais apropriado para sistemas com menos recursos de armazenamento. |
Soft off | S5 | O sistema parece estar desativado. Esse estado é composto por um ciclo completo de desligamento e inicialização. |
Mecânico desativado | G3 | O sistema está completamente desativado e não consome energia. O sistema retorna ao estado de trabalho somente após uma reinicialização completa. |
A enumeração SYSTEM_POWER_STATE define os valores usados para especificar estados de energia do sistema.
Estado de trabalho: S0
Durante o estado de trabalho, o sistema está ativo e em execução. Em termos simples, o dispositivo está ATIVADO. Se a tela está ativada ou desativada, o dispositivo está em um estado de execução completo. Para economizar energia, especialmente em dispositivos movidos a bateria, é recomendável que você reduza os componentes de hardware quando eles não estão sendo usados.
Importante
Desligue os componentes de hardware sempre que eles não estiverem sendo usados, independentemente do estado. O baixo consumo de energia é uma consideração importante para os consumidores de dispositivos móveis.
Estado de suspensão: espera moderna
No modo ocioso de baixa potência S0 do estado de trabalho, também chamado de Espera Moderna, o sistema permanece parcialmente em execução. Durante o Modo de Espera Moderno, o sistema pode permanecer atualizado sempre que uma rede adequada estiver disponível e também ativar quando a ação em tempo real for necessária, como a manutenção do sistema operacional. O Modo de Espera Moderno acorda significativamente mais rápido que o S1-S3. Para obter mais informações, confira Espera Moderna.
Observação
O Modo de Espera Moderno só está disponível em alguns sistemas SoC. Quando há suporte, o sistema não dá suporte ao S1-S3.
Cuidado
Não habilite o S3 wake-on-LAN (WoL) em sistemas compatíveis com Standaby modernos. Acordar um computador com um pacote mágico é suportado nativamente pelo Modo de Espera Moderno. Habilitar o S3 WoL herdado não é necessário e pode causar tempestades de pacotes DHCP e/ou DNS em sua rede.
Estado de suspensão: S1-S3
O sistema entra em suspensão com base em uma série de critérios, incluindo atividade de usuário ou aplicativo e preferências que o usuário define na página De suspensão do Power & do aplicativo Configurações. Por padrão, o sistema usa o estado de suspensão mais baixo suportado por todos os dispositivos de ativação habilitados. Para obter mais informações sobre como o sistema determina quando entrar em suspensão, consulte Critérios de suspensão do sistema.
Antes que o sistema entre em suspensão, ele determina o estado de suspensão apropriado, notifica aplicativos e drivers da transição pendente e, em seguida, faz a transição do sistema para o estado de suspensão. No caso de uma transição crítica, como quando o limite crítico da bateria é atingido, o sistema não notifica aplicativos e drivers. Os aplicativos precisam estar preparados para isso e tomar as medidas apropriadas quando o sistema retornar ao estado de trabalho.
Em estados S1-S3 , a memória volátil é mantida atualizada para manter o estado do sistema. Alguns componentes permanecem ligados para que o computador possa ativar a entrada do teclado, LAN ou um dispositivo USB.
O sistema também acorda do sono em resposta à atividade do usuário ou a um evento de ativação definido por um aplicativo. Para obter mais informações, consulte Eventos de ativação do sistema. A quantidade de tempo que o sistema leva para acordar depende do estado de sono do qual está acordando. O sistema leva mais tempo para acordar de um estado de menor potência (S3) do que de um estado de maior potência (S1) devido ao trabalho extra que o hardware pode ter que fazer. Por exemplo, estabilizar a fonte de alimentação ou inicializar novamente o processador.
Cuidado
Ao chamar SetThreadExecutionState, o ES_AWAYMODE_REQUIRED
valor deve ser usado somente quando absolutamente necessário por aplicativos de mídia que exigem que o sistema execute tarefas em segundo plano, como gravar conteúdo de televisão ou mídia de streaming para outros dispositivos enquanto o sistema parece estar dormindo. Aplicativos que não exigem processamento crítico em segundo plano ou executados em computadores portáteis não devem habilitar o modo de exclusão, pois impedem que o sistema conserve energia inserindo o sono verdadeiro.
Suspensão híbrida: S1-S3 + arquivo de hibernação
O sono híbrido é um estado especial que é uma combinação dos estados de suspensão e hibernação. É quando um sistema usa um arquivo de hibernação com S1-S3. O suspensão híbrida só está disponível em alguns sistemas. Quando habilitado, o sistema grava um arquivo de hibernação, mas insere um estado de suspensão mais avançado. Se a energia for perdida enquanto o sistema estiver em suspensão, o sistema sairá da hibernação, o que levará mais tempo, mas restaurará o estado do sistema do usuário.
Estado de hibernação: S4
O Windows usa hibernação para fornecer uma experiência de inicialização rápida. Quando disponível, ele também é usado em dispositivos móveis para estender a duração da bateria utilizável de um sistema, fornecendo um mecanismo para salvar todo o estado do usuário antes de desligar o sistema. Em uma transição de hibernação, todo o conteúdo da memória é gravado em um arquivo na unidade do sistema primário, o arquivo de hibernação. Isso preserva o estado do sistema operacional, aplicativos e dispositivos. No caso em que o volume de memória combinado consome toda a memória física, o arquivo de hibernação deve ser grande o suficiente para garantir que haja espaço para salvar todo o conteúdo da memória física. Como os dados são gravados em armazenamento não volátil, o DRAM não precisa manter a auto-atualização e pode ser desligado, o que significa que o consumo de energia da hibernação é muito baixo, quase o mesmo que desligar.
Durante um desligamento e inicialização completos (S5), toda a sessão do usuário é interrompida e reiniciada na próxima inicialização. Por outro lado, durante uma hibernação (S4), a sessão do usuário é fechada e o estado do usuário é salvo.
Inicialização rápida: arquivo de hibernação reduzido
A inicialização rápida é um tipo de desligamento que usa um arquivo de hibernação para acelerar a inicialização subsequente. Durante esse tipo de desligamento, o usuário é desconectado antes da criação do arquivo de hibernação. A inicialização rápida permite um arquivo de hibernação menor, mais apropriado para sistemas com menos recursos de armazenamento. Para obter mais informações, consulte Tipos de arquivo de hibernação.
Ao usar a inicialização rápida, o sistema aparece para o usuário como se um desligamento completo (S5) tivesse ocorrido, mesmo que o sistema realmente tenha passado por S4. Isso inclui como o sistema responde aos alarmes de ativação do dispositivo.
A inicialização rápida faz logoff das sessões do usuário, mas o conteúdo do kernel (sessão 0) é gravado em disco rígido. Isso permite uma inicialização mais rápida.
Para iniciar programaticamente um desligamento rápido no estilo de inicialização, chame a função InitiateShutdown com o SHUTDOWN_HYBRID
sinalizador ou a função ExitWindowsEx com o EWX_HYBRID_SHUTDOWN
sinalizador .
Observação
No Windows, a inicialização rápida é a transição padrão quando um desligamento do sistema é solicitado. Um desligamento completo (S5) ocorre quando uma reinicialização do sistema é solicitada ou quando um aplicativo chama uma API de desligamento.
Inserindo hibernação
Quando uma solicitação de hibernação é feita, as seguintes etapas ocorrem à medida que o sistema entra em hibernação:
- Aplicativos e serviços são notificados
- Os drivers são notificados
- O estado do usuário e do sistema é salvo no disco em um formato compactado
- O firmware é notificado
Observação
Todos os núcleos no sistema são usados para compactar os dados na memória e gravá-los em disco.
Para iniciar programaticamente uma transição de hibernação, chame a função SetSuspendState .
Retomando da hibernação
Quando um sistema é retomado da hibernação.
Quando um sistema é ativado, as seguintes etapas ocorrem à medida que o sistema retoma a hibernação:
- POST do sistema
- A memória do sistema é descompactada e restaurada do arquivo de hibernação
- Inicialização do dispositivo
- Os drivers são restaurados para o estado em que estavam antes da hibernação
- Os serviços são restaurados para o estado em que estavam antes da hibernação
- O sistema fica disponível para logon
Um currículo da hibernação começa com um POST do sistema semelhante a um desligamento S5. O gerenciador de inicialização do sistema operacional determina que um currículo da hibernação é necessário detectando um arquivo de hibernação válido. Em seguida, ele direciona o sistema para retomar, restaurando o conteúdo da memória e todos os registros arquitetônicos. No caso de um currículo da hibernação, o conteúdo da memória do sistema é lido novamente do disco, descompactado e restaurado, o que coloca o sistema no estado exato em que estava quando foi hibernado. Depois que a memória é restaurada, os dispositivos são re-iniciados, o computador retorna a um estado em execução, pronto para logon.
Observação
Durante um currículo da hibernação, os drivers e os serviços são notificados, mas não são reiniciados. Eles só são restaurados para o estado em que estavam antes da hibernação.
Tipos de arquivo de hibernação
Os arquivos de hibernação são usados para suspensão híbrida, inicialização rápida e hibernação padrão. Há dois tipos, diferenciados por tamanho, um arquivo de hibernação de tamanho completo e reduzido. Somente a inicialização rápida pode usar um arquivo de hibernação reduzido.
Tipo de arquivo de hibernação | Tamanho padrão | Suporta... |
---|---|---|
Completo | 40% da memória física | hibernar, suspensão híbrida, inicialização rápida |
Reduzido | 20% da memória física | inicialização rápida |
Para verificar ou alterar o tipo de arquivo de hibernação usado, execute o utilitário powercfg.exe . Os exemplos a seguir demonstram como. Para obter mais informações, execute powercfg /? hibernate
.
Exemplo | Descrição |
---|---|
powercfg /a |
Verifique o tipo de arquivo de hibernação. Quando um arquivo de hibernação completo é usado, os resultados afirmam que a hibernação é uma opção disponível. Quando um arquivo de hibernação reduzido é usado, os resultados dizem que não há suporte para hibernação. Se o sistema não tiver nenhum arquivo de hibernação, os resultados dizem que a hibernação não foi habilitada. |
powercfg /h /type full |
Altere o tipo de arquivo de hibernação para completo. Isso não é recomendado em sistemas com menos de 32 GB de armazenamento. |
powercfg /h /type reduced |
Altere o tipo de arquivo de hibernação para reduzido. Se o comando retornar "o parâmetro está incorreto", consulte o exemplo a seguir. |
powercfg /h /size 0 powercfg /h /type reduced |
Tente alterar novamente o tipo de arquivo de hibernação para reduzido. Se o arquivo de hibernação estiver definido como um tamanho personalizado maior que 40%, primeiro você deverá definir o tamanho do arquivo como zero. Em seguida, repita a configuração reduzida. |
Estado de desativação: S5
O estado de desligamento reversível é quando o sistema é totalmente desligado sem um arquivo de hibernação. O soft off também é conhecido como desligamento completo. Durante um desligamento e inicialização completos, toda a sessão do usuário é interrompida e reiniciada na próxima inicialização. Consequentemente, uma inicialização/inicialização desse estado leva significativamente mais tempo do que o S1-S4. Um desligamento completo (S5) ocorre quando uma reinicialização do sistema é solicitada ou quando um aplicativo chama uma API de desligamento.
Mecânico fora do estado: G3
Nesse estado, o sistema está completamente desligado e não consome energia. O sistema retorna ao estado de trabalho somente após uma reinicialização completa.
Comportamento de Wake-on-LAN
O recurso WOL (wake-on-LAN) ativa o computador de um estado de baixa potência quando um adaptador de rede detecta um evento WOL (normalmente, um pacote Ethernet especialmente construído).
O WOL tem suporte do modo de suspensão S3 ou hibernação S4 . Não há suporte para ele nos estados de desligamento de inicialização rápida ou S5 . As NICs não estão armadas para despertar nesses estados porque os usuários não esperam que seus sistemas acordem por conta própria.
Observação
Wol não é oficialmente apoiado do estado S5 soft off. No entanto, o BIOS em alguns sistemas pode dar suporte ao arming de NICs para ativação, mesmo que o Windows não esteja envolvido no processo.