Partilhar via


Forçar uma falha do sistema com o botão ligar/desligar

Uma 0x1C8 de Verificação de Bugs: MANUALLY_INITIATED_POWER_BUTTON_HOLD falha manual do sistema pode ser forçada pressionando e segurando o botão de energia quando o seguinte valor do Registro é definido na chave do Registro mostrada:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power]
"PowerButtonBugcheck"=dword:00000001

Para habilitar o recurso manual de retenção do botão de energia de falha do sistema, execute os seguintes comandos em um prompt de comandos com privilégios elevados:

REG ADD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power /v PowerButtonBugCheck /t REG_DWORD /d 0x1 /f

Se esse valor do Registro não existir, o sistema deverá ser reinicializado para que essa alteração entre em vigor.

Se esse valor do Registro existir e o valor for alterado, o sistema não precisará ser reinicializado para que a alteração entre em vigor.

O bug marcar ocorre quando o botão de energia é mantido por 7 segundos, mas liberado antes que a Redefinição da UEFI ocorra em 10 segundos.

Quando o recurso é disparado, o bug regular marcar tela Azul ou Tela verde não é exibido. Em vez disso, você verá uma tela preta que exibe Liberar o botão de energia. Só precisamos de mais alguns segundos para desligar e um indicador de conclusão por cento.

É importante que você solte o botão de energia depois de ver essa tela. Se você continuar a segurar o botão de energia por mais tempo, poderá disparar o tempo limite de desligar o firmware, que geralmente é de cerca de 10 segundos. Se isso acontecer, o despejo pode não ser concluído e pode ser corrompido.

Em alguns sistemas, como laptops ARM64, o temporizador de firmware é mais curto, portanto, você deve liberar o botão de energia imediatamente após 7 segundos para impedir que a energia rígida interrompa a conclusão do despejo.

Esse recurso está disponível no Windows 10 1809/Windows Server 2019 e versões mais recentes.

0x11C8 de Verificação de Bugs: MANUALLY_INITIATED_POWER_BUTTON_HOLD_LIVE_DUMP

Em vez de reinicializar o computador, também é possível criar um despejo ao vivo com um LPBH (Long Power Button Hold). Para obter informações gerais sobre despejos ao vivo, consulte Referência de código de despejo ao vivo do Kernel.

Para habilitar o recurso Desativar Despejo Ao Vivo do Botão De Energia, o valor PowerButtonLiveDump na seguinte chave do Registro está definido:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power]
"PowerButtonLiveDump"=dword:00000001

Para habilitar o recurso despejo ao vivo do Botão de Energia, execute os seguintes comandos em um prompt de comandos com privilégios elevados:

REG ADD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power /v PowerButtonLiveDump /t REG_DWORD /d 0x1 /f

Se essa chave do Registro não existir, o sistema deverá ser reinicializado para que essa alteração entre em vigor.

Se essa chave do Registro existir e o valor for alterado, o sistema não precisará ser reinicializado para que a alteração entre em vigor.

Esse recurso está disponível no Windows 10 versão 22000 e mais recente.

Personalização do PowerButtonLiveDump

O valor do Registro PowerButtonLiveDump pode ser personalizado conforme mostrado abaixo.

Nome Comprimento em bits Deslocamento do início Significado Valor padrão
habilitado 1 0 Quando definido, o despejo ao vivo do botão de energia é habilitado. N/D
UserPages 1 1 Quando definido, solicitará a captura da memória do Modo de Usuário no despejo dinâmico. 0
HypervisorPages 1 2 Quando definido, solicitará a captura de páginas do Hipervisor no despejo ao vivo. 0
Reservado 1 3 Reservado N/D
TimeoutInSec 4 4 Especifique o valor de tempo limite em segundos de quando capturar o Arquivo de Despejo Dinâmico. Somente valores de 2 a 6 (incluindo 2 e 6) são válidos. Se qualquer outro valor for especificado, o valor de tempo limite padrão, 5 segundos, será usado. 5
Reservado 24 8 Reservado N/D

Por exemplo, executar o comando a seguir em um prompt de comandos com privilégios elevados habilitará o recurso PowerButtonLiveDump com UserPages incluído e TimeoutInSec de 2. O kernel solicitará a captura de um arquivo de despejo ao vivo completo quando o botão de energia for mantido por 2 segundos.

REG ADD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power /v PowerButtonLiveDump /t REG_DWORD /d 0x23 /f

PowerButtonBugcheck e PowerButtonLiveDump Prioritization

Se PowerButtonBugcheck e PowerButtonLiveDump estiverem configurados e habilitados no mesmo dispositivo, o PowerButtonBugcheck ocorrerá quando invocado, enquanto o PowerButtonLiveDump não ocorrerá.

Suporte do dispositivo para LPBH (retenção de botão de energia longa)

Para dar suporte à retenção de botão de energia longa, o dispositivo precisa:

  • Um botão de energia baseado em GPIO (E/S Uso Geral)
  • Firmware para rotear o evento de energia para o Windows Power Manager
  • O recurso de marcar de bugs a ser habilitado no Registro

Confira também

0x11C8 de Verificação de Bugs: MANUALLY_INITIATED_POWER_BUTTON_HOLD_LIVE_DUMP

Apresentação interna – 0x1C8 MANUALLY_INITIATED_POWER_BUTTON_HOLD de verificação de bugs

Dispositivo de botão ACPI