Forzare un arresto anomalo del sistema con il pulsante di alimentazione

Controllo bug 0x1C8: MANUALLY_INITIATED_POWER_BUTTON_HOLD arresto anomalo del sistema manuale può essere forzato premendo e tenendo premuto il pulsante di alimentazione quando il valore del Registro di sistema seguente è impostato nella chiave del Registro di sistema visualizzata:

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

Per abilitare la funzionalità di blocco del pulsante di alimentazione del sistema manuale, eseguire i comandi seguenti da un prompt dei comandi con privilegi elevati:

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

Se questo valore del Registro di sistema non esiste, è necessario riavviare il sistema per rendere effettiva questa modifica.

Se questo valore del Registro di sistema esiste e il valore viene modificato, il sistema non deve essere riavviato per l'effetto della modifica.

Il controllo dei bug si verifica quando il pulsante di alimentazione viene mantenuto per 7 secondi, ma rilasciato prima che la reimpostazione UEFI si verifichi a 10 secondi.

Quando la funzionalità viene attivata, la schermata Blu o La schermata Verde non viene visualizzata. Verrà invece visualizzata una schermata nera che visualizza Rilascia il pulsante di alimentazione. Sono necessari solo alcuni secondi per arrestare e un indicatore di completamento percentuale.

È importante rilasciare il pulsante di alimentazione dopo aver visualizzato questa schermata. Se si continua a tenere premuto il pulsante di alimentazione più a lungo, è possibile attivare il timeout di spegnimento del firmware che in genere è di circa 10 secondi. In questo caso, il dump potrebbe non essere completato e può essere danneggiato.

In alcuni sistemi, ad esempio i portatili ARM64, il timer del firmware è più breve, quindi è necessario rilasciare il pulsante di alimentazione immediatamente dopo 7 secondi per impedire la disattivazione del carico rigido interrompendo il completamento del dump.

Questa funzionalità è disponibile in Windows 10 1809/Windows Server 2019 e versioni successive.

Controllo bug 0x11C8: MANUALLY_INITIATED_POWER_BUTTON_HOLD_LIVE_DUMP

Invece di riavviare il PC, è anche possibile creare un dump live con un blocco long power Button Hold (LPBH). Per informazioni generali sui dump live, vedere Riferimento al codice di dump live del kernel.

Per abilitare la funzionalità Power Button Hold Live Dump, il valore PowerButtonLiveDump nella chiave del Registro di sistema seguente è impostato:

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

Per abilitare la funzionalità Power Button Live Dump, eseguire i comandi seguenti da un prompt dei comandi con privilegi elevati:

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

Se questa chiave del Registro di sistema non esiste, è necessario riavviare il sistema per rendere effettiva questa modifica.

Se questa chiave del Registro di sistema esiste e il valore viene modificato, il sistema non deve essere riavviato per l'effetto della modifica.

Questa funzionalità è disponibile in Windows 10 versione 22000 e versioni successive.

Personalizzazione di PowerButtonLiveDump

Il valore del Registro di sistema PowerButtonLiveDump può essere personalizzato come indicato di seguito.

Nome Lunghezza in bit Offset dall'inizio Significato Valore predefinito
Attivato 1 0 Se impostato, il dump attivo del pulsante di alimentazione è abilitato. N/D
UserPages 1 1 Quando impostato, richiederà di acquisire la memoria in modalità utente nel dump in tempo reale. 0
HypervisorPages 1 2 Quando impostato, richiederà di acquisire pagine hypervisor nel dump live. 0
Riservato 1 3 Riservato N/D
TimeoutInSec 4 4 Specificare il valore di timeout in secondi di quando acquisire il file di dump live. Sono validi solo i valori da 2 a 6 (inclusi 2 e 6). Se viene specificato un altro valore, verrà usato il valore di timeout predefinito, 5 secondi. 5
Riservato 24 8 Riservato N/D

Ad esempio, l'esecuzione del comando seguente da un prompt dei comandi con privilegi elevati consentirà la funzionalità PowerButtonLiveDump con UserPages inclusa e TimeoutInSec di 2. Il kernel richiederà di acquisire un file Full Live Dump quando il pulsante di alimentazione viene mantenuto per 2 secondi.

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

PowerButtonBugcheck e PowerButtonLiveDump Prioritization

Se sia PowerButtonBugcheck che PowerButtonLiveDump sono configurati e abilitati nello stesso dispositivo, il controllo PowerButtonBugcheck si verificherà quando richiamato, mentre PowerButtonLiveDump non verrà richiamato.

Supporto del dispositivo per il blocco del pulsante di alimentazione prolungata (LPBH)

Per supportare il blocco long power Button, il dispositivo deve:

  • Pulsante di alimentazione basato su I/O (GPIO) per utilizzo generico
  • Firmware per instradare l'evento di alimentazione a Windows Power Manager
  • Funzionalità di verifica dei bug da abilitare nel Registro di sistema

Vedi anche

Controllo bug 0x11C8: MANUALLY_INITIATED_POWER_BUTTON_HOLD_LIVE_DUMP

All'interno di Mostra - Controllo bug 0x1C8 MANUALLY_INITIATED_POWER_BUTTON_HOLD

Dispositivo del pulsante ACPI