Per la versione di questo articolo relativa a Microsoft Windows NT e a Microsoft Windows 2000, vedere 156280.
Sommario
In questo articolo viene descritto Dumpchk.exe, un'utilità della riga di comando utilizzabile per verificare che un file di immagine della memoria sia stato creato correttamente. Dumpchk non richiede l'accesso a simboli.
Informazioni
Dumpchk è disponibile sul CD di Windows XP e viene installato con gli Strumenti di supporto eseguendo il file Setup.exe dalla cartella Support\Tools del CD. In base all'impostazione predefinita, Dumpchk.exe viene installato nella cartella Programmi\Support Tools.
Dumpchk supporta le seguenti opzioni della riga di comando:
DUMPCHK [opzioni] <CrashDumpFile>
-? Consente di visualizzare la sintassi del comando.
-p Consente di stampare solo l'intestazione senza alcuna convalida.
-v Consente di specificare la modalità dettagliata.
-q Consente di effettuare una rapida verifica. Non disponibile in Windows XP.
Ulteriori opzioni sono disponibili nella versione di Dumpchk.exe presente in Windows XP:
-c Consente di effettuare la convalida dell'immagine.
-x Consente di effettuare un'ulteriore convalida del file che può richiedere diversi minuti.
-e Consente di effettuare un'analisi dell'immagine.
-y <Percorso> Consente di impostare il percorso di ricerca dei file di simboli per un'analisi dell'immagine.
Se il percorso di ricerca del file di simboli è vuoto, viene utilizzato il CD
per i simboli.
-b <Percorso> Consente di impostare il percorso di ricerca dei file di immagine per un'analisi dell'immagine.
Se il percorso di ricerca del file dei simboli è vuoto, viene utilizzata la cartella
%SystemRoot%\System32 per i simboli.
-k <File> Consente di impostare il nome del kernel su File.
-h <File> Consente di impostare il nome dell'HAL su File.
Dumpchk visualizza alcune informazioni di base dal file di immagine della memoria, quindi verifica tutti gli indirizzi virtuali e fisici nel file. Gli eventuali errori rilevati nel file di immagine della memoria, vengono segnalati da Dumpchk. Di seguito è riportato un esempio dell'output di un comando Dumpchk:
Filename . . . . . . .Memory.dmp
Signature. . . . . . .PAGE
ValidDump. . . . . . .DUMP
MajorVersion . . . . .free system
MinorVersion . . . . .1057
DirectoryTableBase . .0x00030000
PfnDataBase. . . . . .0xffbae000
PsLoadedModuleList . .0x801463d0
PsActiveProcessHead. .0x801462c8
MachineImageType . . .i386
NumberProcessors . . .1
BugCheckCode . . . . .0xc000021a
BugCheckParameter1 . .0xe131d948
BugCheckParameter2 . .0x00000000
BugCheckParameter3 . .0x00000000
BugCheckParameter4 . .0x00000000
ExceptionCode. . . . .0x80000003
ExceptionFlags . . . .0x00000001
ExceptionAddress . . .0x80146e1c
NumberOfRuns . . . . .0x3
NumberOfPages. . . . .0x1f5e
Run #1
BasePage . . . . . .0x1
PageCount. . . . . .0x9e
Run #2
BasePage . . . . . .0x100
PageCount. . . . . .0xec0
Run #3
BasePage . . . . . .0x1000
PageCount. . . . . .0x1000
**************
**************--> Validating the integrity of the PsLoadedModuleList
**************
**************
**************--> Performing a complete check (^C to end)
**************
**************
**************--> Validating all physical addresses
**************
**************
**************--> Validating all virtual addresses
**************
**************
**************--> This dump file is good!
**************
Se si verifica un errore in qualsiasi parte dell'output, il file dell'immagine viene danneggiato e non è possibile effettuare l'analisi.
In questo esempio le informazioni più importanti dal punto di vista del debug sono la porzione dell'output del comando Dumpchk riportata di seguito:
MajorVersion . . . . .free system
MinorVersion . . . . .1057
MachineImageType . . .i386
NumberProcessors . . .1
BugCheckCode . . . . .0xc000021a
BugCheckParameter1 . .0xe131d948
BugCheckParameter2 . .0x00000000
BugCheckParameter3 . .0x00000000
BugCheckParameter4 . .0x00000000
Queste informazioni possono essere utilizzate per determinare l'errore Stop del kernel che si è verificato e in una certa misura la versione di Windows in uso.