Leggere in inglese

Condividi tramite


LiveKd v5.63

Di Mark Russinovich e Ken Johnson

Data di pubblicazione: 28 aprile 2020

ScaricaScaricare LiveKd (700 KB)

Introduzione

LiveKD, un'utilità che ho scritto per il CD incluso con Inside Windows 2000, 3rd Edition, è ora disponibile gratuitamente. LiveKD consente di eseguire i debugger del kernel Microsoft Kd e Windbg, che fanno parte del pacchetto Strumenti di debug per Windows, localmente in un sistema live. Eseguire tutti i comandi del debugger che funzionano sui file di dump di arresto anomalo del sistema per esaminare in modo approfondito il sistema. Per informazioni su come esplorare un sistema con i debugger del kernel, vedere la documentazione relativa agli Strumenti di debug per Windows e il nostro libro.

Anche se le versioni più recenti di Windbg e Kd hanno una funzionalità simile in Windows Vista e Server 2008, LiveKD offre maggiori funzionalità, ad esempio la visualizzazione di stack di thread con il comando !thread, rispetto alla funzionalità di debug del kernel live di Windbg e Kd.

Installazione

Scaricare e installare prima di tutto il pacchetto Strumenti di debug per Windows dal sito Web di Microsoft:

https://msdn.microsoft.com/library/windows/hardware/ff551063(v=vs.85).aspx

Se si installano gli strumenti nella directory predefinita di \Programmi\Microsoft\Debugging Tools per Windows, è possibile eseguire LiveKD da qualsiasi directory; in caso contrario, è necessario copiare LiveKD nella directory in cui sono installati gli strumenti.

Se non sono stati installati simboli per il sistema in cui si esegue LiveKD, LiveKD chiederà se si vuole configurare automaticamente il sistema per usare il server dei simboli Microsoft (vedere la documentazione degli Strumenti di debug per Windows per informazioni sui file di simboli e sul server dei simboli Microsoft).

NOTA: il debugger Microsoft segnala che non riesce a trovare i simboli per LIVEKDD.SYS. Questo è previsto, poiché non ho reso disponibili i simboli per LIVEKDD.SYS, e non influisce sul comportamento del debugger.

Uso di LiveKd

sintassi:

liveKd [[-w]|[-k <debugger>]|[-o filename]] [-vsym] [-m[flags] [[-mp process]|[pid]]][debugger options]
liveKd [[-w]|[-k <debugger>]|[-o filename]] -ml [debugger options]
liveKd [[-w]|[-k <debugger>]|[-o filename]] [[-hl]|[-hv <VM name> [[-p]|[-hvd]]]] [debugger options]

Parametro Descrizione
-hv Specifica il nome o il GUID della macchina virtuale Hyper-V di cui eseguire il debug.
-hvd Include le pagine dell'hypervisor (solo Windows 8.1 e versioni successive).
-hvl Elenca i nomi e i GUID delle macchine virtuali Hyper-V in esecuzione.
-k  Specifica il percorso completo e il nome file dell'immagine del debugger da eseguire
-m  Crea un dump del mirror, che è una visualizzazione coerente della memoria del kernel.
Sarà disponibile solo la memoria in modalità kernel e questa opzione potrebbe richiedere quantità significative di memoria fisica disponibile.  È possibile fornire facoltativamente una maschera di flag che specifica quali aree includere (ricavata dalla tabella seguente, il valore predefinito è 0x18F8):
0001 - processo privato, 0002 - file mappato,
0004 - sezione condivisa, 0008 - pagine della tabella pagine,
0010 - pool di paging, 0020 - pool non di paging,
0040 - voci tabella pagine di sistema, 0080 - pagine di sessione,
0100 - file di metadati, 0200 - pagine utente AWE,
0400 - pagine del driver, 0800 - stack del kernel,
1000 - metadati WS, 2000 - pagine di grandi dimensioni
Il valore predefinito acquisisce la maggior parte del contenuto della memoria kernel ed è consigliato.
Questa opzione può essere usata con -o per salvare dump più veloci e coerenti.
I dump del mirror richiedono Windows Vista o Windows Server 2008 o versione successiva.
Sysinternals RamMap fornisce un riepilogo grafico della distribuzione delle aree di memoria disponibili che possono essere selezionate per l'inclusione.
-ml  Genera dump live usando il supporto nativo (solo Windows 8.1 e versioni successive).
-mp  Specifica un singolo processo il cui contenuto di memoria in modalità utente deve essere incluso in un dump del mirror. È efficace solo con l'opzione -m.
-o Salva un file memory.dmp su disco anziché avviare il debugger.
-p Sospende la macchina virtuale Hyper-V di destinazione mentre LiveKd è attivo (consigliato per l'uso con -o). Specifica il nome o il GUID della macchina virtuale Hyper-V di cui eseguire il debug.
-hvl Elenca i nomi e i GUID delle macchine virtuali Hyper-V in esecuzione.
-vsym Visualizza informazioni di debug dettagliate sulle operazioni di caricamento dei simboli.
-w  Esegue windbg invece di kd

Tutte le altre opzioni vengono passate al debugger.

Nota: usare CTRL+INTERR per terminare e riavviare il debugger se si blocca.

Per impostazione predefinita, LiveKd esegue kd.exe.

ScaricaScaricare LiveKd (700 KB)

In esecuzione su:

  • Client: Windows Vista e versioni successive.
  • Server: Windows Server 2008 e versioni successive.