Hvordan kan jeg læse en DMP-fil?

Ung mand, der bruger bærbar computer i cafeen

Billedkredit: Dangubic/iStock/Getty Images

Enhver computerbruger kender den frustrerede, synkende følelse, der opstår, når et systemnedbrud rammer. Systemnedbrud sker uden varsel og resulterer i nedsat produktivitet, irriterede brugere og nogle gange tabt arbejde.

En "dump" er en registrering af computerens tilstand i det øjeblik, hvor et nedbrud. Dumpfiler genereres automatisk af Windows, når der opstår et nedbrud. De bruges af udviklere og avancerede brugere til at hjælpe med at finde ud af, hvad der forårsagede nedbruddet. DMP er filtypen Windows bruger til dumpfiler.

Dagens video

DMP fildataformat

Der er tre typer hukommelsesdumps, der kan genereres af Windows. Den første og største kaldes en komplet hukommelsesdump. Når denne type dump oprettes, skrives det samlede indhold af hukommelsen til en DMP-fil.

Den anden, og især mindre, dump-type er kernel memory dump. Som navnet antyder, registrerer en kernehukommelsesdump kun kernehukommelsen. Ikke-allokeret hukommelse og enhver hukommelse, der er allokeret til brugertilstandsprogrammer, ignoreres. Dette gør det nemmere og mindre tidskrævende at analysere dumpfilen end med et komplet hukommelsesdump.

Den tredje og mest kompakte type dump, kaldet en lille hukommelsesdump, genererer en DMP-fil, der kun er 64 kilobyte stor. Den indeholder kun følgende information: Stop-meddelelsen og dens parametre, en liste over indlæste drivere, processorkonteksten (PRCB) for den stoppede processor, behandle information og kernekontekst (EPROCESS) data, procesdata og kernekontekst (ETHREAD) for den stoppede tråd og Kernel-mode opkaldsstakken for den stoppede tråd.

Sådan finder du en DMP-fil

Som standard skrives komplette hukommelsesdumps og kernehukommelsesdumps begge til %SystemRoot%\Memory.dmp. Windows gemmer kun én af disse dumpfiler ad gangen. Når der opstår et nyt nedbrud, overskrives den eksisterende DMP-fil.

DMP-filer, der er genereret af en lille hukommelsesdump, gemmes imidlertid i mappen %SystemRoot%\Minidump. I modsætning til andre dumptyper bliver eksisterende små hukommelsesdumpfiler ikke overskrevet, når nye genereres.

Windows inkluderer automatisk datoen i filnavnet på små hukommelsesdump-DMP-filer. For eksempel blev en DMP-fil med navnet "mini043014-01.dmp" oprettet den 30. april 2014. "-01" efter datoen i filnavnet indikerer, at det var den første DMP-fil, der blev oprettet den dag.

Åbning og visning af en DMP-fil

Der er to hovedsoftwareapplikationer, der bruges til at åbne og se DMP-filer: Windows Debugging Tools og Dump Check Utility, også kaldet Dumpchk. Windows Debugging Tools er den bedste mulighed for at undersøge komplette hukommelsesdumps og kernehukommelsesdumps, mens Dumpchk er ideel til at se på små hukommelsesdumps. Begge applikationer kan downloades gratis fra Microsofts hjemmeside. Da de nøjagtige URL'er kan ændre sig over tid, er det bedst at søge efter programmerne ved navn på http://www.microsoft.com og download derefter fra de resulterende links.

For at undersøge en DMP-fil ved hjælp af Windows Debugging Tools skal du åbne en kommandoprompt og navigere til den mappe, hvor du installerede Windows Debugging Tools. Indtast derefter en af ​​følgende kommandoer for at åbne filen:

windbg -y SymbolPath -i ImagePath -z DumpFilePath

kd -y SymbolPath -i ImagePath -z DumpFilePath

Den første kommando åbner DMP-filen i Windows GUI-debugger, mens den anden kommando åbner den i en tekstbaseret grænseflade. SymbolPath-parameteren henviser til placeringen af ​​fejlfindingssymbolerne på din harddisk. ImagePath-parameteren refererer til placeringen af ​​dine billedfiler. Endelig er DumpFilePath-parameteren placeringen af ​​din DMP-fil.

For at åbne en DMP-fil i Dumpchk skal du blot skrive følgende kommando i en kommandoprompt:

dumpchk DumpFilePath

Analyse af indholdet af en DMP-fil

Windows Debugging Tools tilbyder en række nyttige kommandoer til at analysere DMP-filer. Kommandoen !analyze -show udsender Stop fejlkoden og dens parametre. Dette er nyttigt til at finde ud af, hvad der præcist førte til styrtet. Kommandoen !analyze -v viser de samme oplysninger som udførligt output. Kommandoen lm N T viser en liste over indlæste moduler på tidspunktet for nedbruddet.

Sammenlignet med Windows Debugging Tools er Dumpchk et ret simpelt værktøj. Det bruges primært til at verificere integriteten af ​​dumpfiler og til at se dem. For at teste en dumpfil for fejl, kan du bruge kommandolinjeudvidelsen -e. For eksempel skal du skrive følgende på kommandolinjen:

dumpchk -e DumpFilePath

Andre Dumpchk-indstillinger inkluderer -v, som aktiverer verbose mode, -p, som kun udsender DMP-headeren, og -c, som udfører en hurtig dump-validering.