Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
I tipi di tastiere seguenti possono causare un arresto anomalo del sistema direttamente:
Tastiere PS/2 connesse alle porte i8042prt Questa funzionalità è disponibile in Windows 2000 e versioni successive del sistema operativo Windows.
Tastiere USB
Questa funzionalità è disponibile in Windows Vista e versioni successive del sistema operativo Windows.Tastiere Hyper-V
Questa funzionalità è disponibile in Windows 10 versione 1903 e versioni successive del sistema operativo Windows.
Impostazione
Configurare le impostazioni seguenti per abilitare un arresto anomalo del sistema tramite la tastiera:
Se si desidera scrivere un file dump di arresto anomalo del sistema, è necessario abilitare tali file di dump. Scegliere il percorso e il nome del file e selezionare le dimensioni del file di dump. Per ulteriori informazioni, consultare Abilitazione di un file di dump in modalità kernel.
Con le tastiere PS/2, è necessario abilitare l'arresto anomalo avviato dalla tastiera nel Registro di sistema. Nella chiave
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\i8042prt\Parameters
del Registro di sistema creare un valore denominatoCrashOnCtrlScroll
e impostarlo su unREG_DWORD
valore di 0x01.Con le tastiere USB, è necessario abilitare l'arresto anomalo avviato dalla tastiera nel Registro di sistema. Nella chiave
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\i8042prt\Parameters
del Registro di sistema, creare un valore denominatoCrashOnCtrlScroll
e impostarlo su un valoreREG_DWORD
di 0x01.Con le tastiere Hyper-V, è necessario abilitare l'arresto anomalo avviato dalla tastiera nel Registro di sistema. Nella chiave
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\i8042prt\Parameters
del Registro di sistema creare un valore denominatoCrashOnCtrlScroll
e impostarlo su unREG_DWORD
valore di 0x01.
Alcuni portatili usano il driver PS/2 per la tastiera predefinita e supportano anche tastiere HID esterne. Per questi sistemi, è consigliabile creare sia i tasti USB che PS/2 del Registro di sistema per consentire l'uso di entrambe le tastiere.
Per rendere effettive queste impostazioni, è necessario riavviare il sistema.
Al termine del riavvio, l'arresto anomalo della tastiera può essere avviato usando la sequenza di tasti di scelta rapida seguente: tenere premuto il tasto CTRL più a destra e premere due volte il tasto SCROLL LOCK.
Il sistema quindi chiama KeBugCheck
ed emette Verifica di bug 0xE2: CRASH_AVVIATO_MANUALMENTE. A meno che i dump di arresto anomalo del sistema non siano stati disabilitati, viene quindi scritto un file di dump di arresto anomalo del sistema.
Se un debugger del kernel è collegato al computer arrestato in modo anomalo, il computer si interromperà nel debugger del kernel dopo la scrittura del file di dump di arresto anomalo del sistema.
Definizione di tasti di scelta rapida alternativi per forzare un arresto anomalo del sistema tramite tastiera
È possibile configurare valori alternativi nelle seguenti sottochiavi del Registro di sistema per le sequenze di tasti di scelta rapida per generare il file di dump della memoria:
Per le tastiere PS/2:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\crashdump
Per le tastiere USB:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid\crashdump
Per le tastiere Hyper-V:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\hyperkbd\crashdump
È necessario creare i seguenti valori del Registro REG_DWORD
in queste sottochiavi:
Dump1Keys
Il valore del Dump1Keys
nel registro di sistema è un bitmap del primo tasto di scelta rapida da utilizzare. Ad esempio, invece di usare il tasto CTRL più a destra per avviare la sequenza di tasti di scelta rapida, è possibile impostare il primo tasto di scelta rapida come tasto MAIUSC all'estrema sinistra.
I valori esadecimali per la prima chiave di scelta rapida sono descritti nella tabella seguente.
Valore | Primo tasto usato nella sequenza di tasti di scelta rapida |
---|---|
0x01 | Tasto MAIUSC all'estrema destra |
0x02 | Tasto CTRL più a destra |
0x04 | Tasto ALT più a destra |
0x10 | Tasto MAIUSC all'estrema sinistra |
0x20 | Tasto CTRL all'estrema sinistra |
0x40 | Tasto ALT più a sinistra |
È possibile assegnare Dump1Keys
un valore che abilita uno o più tasti come primo tasto usato nella sequenza di tasti di scelta rapida. Ad esempio, assegnare Dump1Keys
un valore di 0x11 per definire sia il tasto MAIUSC più a destra che quello più a sinistra come primo tasto nella sequenza di tasti di scelta rapida.
Dump2Key
Il valore del registro di sistema Dump2Key
è l'indice nella tabella codici di scansione per il layout della tastiera del computer di destinazione. Vedi la tabella reale nel driver.
const UCHAR keyToScanTbl[134] = {
0x00,0x29,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,
0x0A,0x0B,0x0C,0x0D,0x7D,0x0E,0x0F,0x10,0x11,0x12,
0x13,0x14,0x15,0x16,0x17,0x18,0x19,0x1A,0x1B,0x00,
0x3A,0x1E,0x1F,0x20,0x21,0x22,0x23,0x24,0x25,0x26,
0x27,0x28,0x2B,0x1C,0x2A,0x00,0x2C,0x2D,0x2E,0x2F,
0x30,0x31,0x32,0x33,0x34,0x35,0x73,0x36,0x1D,0x00,
0x38,0x39,0xB8,0x00,0x9D,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0xD2,0xD3,0x00,0x00,0xCB,
0xC7,0xCF,0x00,0xC8,0xD0,0xC9,0xD1,0x00,0x00,0xCD,
0x45,0x47,0x4B,0x4F,0x00,0xB5,0x48,0x4C,0x50,0x52,
0x37,0x49,0x4D,0x51,0x53,0x4A,0x4E,0x00,0x9C,0x00,
0x01,0x00,0x3B,0x3C,0x3D,0x3E,0x3F,0x40,0x41,0x42,
0x43,0x44,0x57,0x58,0x00,0x46,0x00,0x00,0x00,0x00,
0x00,0x7B,0x79,0x70 };
L'indice 124 (sysreq) è un caso speciale perché una tastiera a 84 tasti ha un codice di analisi diverso.
Se si definiscono tasti di scelta rapida alternativi per forzare un crash del sistema da una tastiera USB o PS/2, è necessario impostare il valore del CrashOnCtrlScroll
nel Registro di sistema su 0 oppure rimuoverlo dal Registro di sistema.
Esempio: in questo scenario, un portatile usa un driver di tastiera PS2 e viene collegata una tastiera HID esterna. L'impostazione di entrambi i valori consente di attivare un arresto anomalo manuale del sistema da entrambe le tastiere. Un arresto anomalo del sistema manuale può essere forzato tenendo premuto il tasto di controllo più a destra e premendo la barra spaziatrice due volte quando viene impostata la chiave del Registro di sistema seguente.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\crashdump]
"Dump1Keys"=dword:00000002
"Dump2Key"=dword:0000003d
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid\crashdump]
"Dump1Keys"=dword:00000002
"Dump2Key"=dword:0000003d
Limiti
È possibile, ma raro che un sistema si blocchi in modo tale che la sequenza di tasti di scelta rapida non funzioni. L'uso della sequenza di tasti di scelta rapida per avviare un crash funzionerà anche in molti casi in cui CTRL+ALT+CANC non funziona.
Forzare un arresto anomalo del sistema dalla tastiera non funziona se il computer smette di rispondere a un livello elevato di richiesta di interrupt (IRQL). Questa limitazione esiste perché il driver Kbdhid.sys , che consente l'esecuzione del processo di dump della memoria, opera a un runtime di integrazione inferiore rispetto al driver i8042prt.sys .
Vedi anche
Verifica bug 0xE2: MANUALLY_INITIATED_CRASH
Analisi di un file dump in modalità kernel con WinDbg
Controllo bug 0x161: LIVE_SYSTEM_DUMP
Generare un kernel o completare un dump di arresto anomalo
Varietà di file di dump in modalità kernel.