Πώς μπορώ να διαβάσω ένα αρχείο DMP;

Νεαρός άνδρας που χρησιμοποιεί φορητό υπολογιστή στον καφέ

Πίστωση εικόνας: Dangubic/iStock/Getty Images

Κάθε χρήστης υπολογιστή γνωρίζει αυτό το αίσθημα απογοήτευσης, βύθισης που εμφανίζεται όταν χτυπήσει ένα σύστημα. Τα σφάλματα συστήματος συμβαίνουν χωρίς προειδοποίηση και έχουν ως αποτέλεσμα μείωση της παραγωγικότητας, εξοργισμένους χρήστες και μερικές φορές απώλεια εργασίας.

Το "dump" είναι μια καταγραφή της κατάστασης του υπολογιστή τη στιγμή της συντριβής. Τα αρχεία ένδειξης σφαλμάτων δημιουργούνται αυτόματα από τα Windows όταν συμβεί ένα σφάλμα. Χρησιμοποιούνται από προγραμματιστές και προχωρημένους χρήστες για να βοηθήσουν να καταλάβουμε τι προκάλεσε τη συντριβή. Το DMP είναι η επέκταση αρχείου που χρησιμοποιεί τα Windows για εντύπωση αρχείων.

Το βίντεο της ημέρας

Μορφή δεδομένων αρχείου DMP

Υπάρχουν τρεις τύποι αποθήκευσης μνήμης που μπορούν να δημιουργηθούν από τα Windows. Η πρώτη και μεγαλύτερη ονομάζεται χωματερή πλήρους μνήμης. Όταν δημιουργείται αυτός ο τύπος ένδειξης σφαλμάτων, τα συνολικά περιεχόμενα της μνήμης εγγράφονται σε ένα αρχείο DMP.

Ο δεύτερος, και ιδιαίτερα μικρότερος, τύπος dump είναι το kernel memory dump. Όπως υποδηλώνει το όνομά του, μια ένδειξη μνήμης πυρήνα καταγράφει μόνο τη μνήμη του πυρήνα. Η μη εκχωρημένη μνήμη και οποιαδήποτε μνήμη εκχωρείται σε προγράμματα λειτουργίας χρήστη αγνοούνται. Αυτό καθιστά την ανάλυση του αρχείου ένδειξης πιο εύκολη και λιγότερο χρονοβόρα από ό, τι με μια πλήρη ένδειξη αποθήκευσης μνήμης.

Ο τρίτος και πιο συμπαγής τύπος ένδειξης σφαλμάτων, που ονομάζεται μικρή ένδειξη αποθήκευσης μνήμης, δημιουργεί ένα αρχείο DMP μεγέθους μόλις 64 kilobyte. Περιλαμβάνει μόνο τις ακόλουθες πληροφορίες: το μήνυμα Stop και τις παραμέτρους του, μια λίστα φορτωμένων προγραμμάτων οδήγησης, το περιβάλλον του επεξεργαστή (PRCB) για τον σταματημένο επεξεργαστή, το πληροφορίες διεργασίας και δεδομένα περιβάλλοντος πυρήνα (EPROCESS), τα δεδομένα διεργασίας και το περιβάλλον πυρήνα (ETHREAD) για το σταματημένο νήμα και η στοίβα κλήσης λειτουργίας πυρήνα για το σταματημένο Νήμα.

Πώς να εντοπίσετε ένα αρχείο DMP

Από προεπιλογή, οι αποθήκες πλήρους μνήμης και οι αποθήκες μνήμης πυρήνα γράφονται και οι δύο στο %SystemRoot%\Memory.dmp. Τα Windows αποθηκεύουν μόνο ένα από αυτά τα dump αρχεία κάθε φορά. Όταν παρουσιάζεται ένα νέο σφάλμα, το υπάρχον αρχείο DMP αντικαθίσταται.

Ωστόσο, τα αρχεία DMP που δημιουργούνται από μια μικρή ένδειξη μνήμης αποθηκεύονται στον κατάλογο %SystemRoot%\Minidump. Σε αντίθεση με άλλους τύπους ένδειξης σφαλμάτων, τα υπάρχοντα μικρά αρχεία ένδειξης σφαλμάτων μνήμης δεν αντικαθίστανται όταν δημιουργούνται νέα.

Τα Windows συμπεριλαμβάνουν αυτόματα την ημερομηνία στο όνομα αρχείου των αρχείων DMP με ένδειξη μικρής μνήμης. Για παράδειγμα, ένα αρχείο DMP με το όνομα "mini043014-01.dmp" δημιουργήθηκε στις 30 Απριλίου 2014. Το "-01" που ακολουθεί την ημερομηνία στο όνομα αρχείου υποδεικνύει ότι ήταν το πρώτο αρχείο DMP που δημιουργήθηκε εκείνη την ημέρα.

Άνοιγμα και προβολή αρχείου DMP

Υπάρχουν δύο κύριες εφαρμογές λογισμικού που χρησιμοποιούνται για το άνοιγμα και την προβολή αρχείων DMP: τα Windows Debugging Tools και το Dump Check Utility, που ονομάζεται επίσης Dumpchk. Τα Εργαλεία εντοπισμού σφαλμάτων των Windows είναι η καλύτερη επιλογή για την εξέταση πλήρων σημείων ένδειξης σφαλμάτων και μνήμης πυρήνα, ενώ το Dumpchk είναι ιδανικό για την εξέταση μικρών σημείων ένδειξης σφαλμάτων. Και οι δύο εφαρμογές μπορούν να ληφθούν δωρεάν από τον ιστότοπο της Microsoft. Δεδομένου ότι οι ακριβείς διευθύνσεις URL ενδέχεται να αλλάξουν με την πάροδο του χρόνου, είναι καλύτερο να αναζητήσετε τα προγράμματα με το όνομα στο http://www.microsoft.com και στη συνέχεια πραγματοποιήστε λήψη από τους συνδέσμους που προκύπτουν.

Για να εξετάσετε ένα αρχείο DMP χρησιμοποιώντας τα Εργαλεία εντοπισμού σφαλμάτων των Windows, ανοίξτε μια γραμμή εντολών και μεταβείτε στον φάκελο όπου εγκαταστήσατε τα Εργαλεία εντοπισμού σφαλμάτων των Windows. Στη συνέχεια, πληκτρολογήστε μία από τις ακόλουθες εντολές για να ανοίξετε το αρχείο:

windbg -y SymbolPath -i ImagePath -z DumpFilePath

kd -y SymbolPath -i ImagePath -z DumpFilePath

Η πρώτη εντολή θα ανοίξει το αρχείο DMP στο πρόγραμμα εντοπισμού σφαλμάτων GUI του Window, ενώ η δεύτερη εντολή θα το ανοίξει σε μια διεπαφή που βασίζεται σε κείμενο. Η παράμετρος SymbolPath αναφέρεται στη θέση των συμβόλων εντοπισμού σφαλμάτων στον σκληρό σας δίσκο. Η παράμετρος ImagePath αναφέρεται στη θέση των αρχείων εικόνας σας. Τέλος, η παράμετρος DumpFilePath είναι η θέση του αρχείου DMP.

Για να ανοίξετε ένα αρχείο DMP στο Dumpchk, απλώς πληκτρολογήστε την ακόλουθη εντολή σε μια γραμμή εντολών:

dumpchk DumpFilePath

Ανάλυση του περιεχομένου ενός αρχείου DMP

Τα Εργαλεία εντοπισμού σφαλμάτων των Windows προσφέρουν μια σειρά από χρήσιμες εντολές για την ανάλυση αρχείων DMP. Η εντολή !analyze -show εξάγει τον κωδικό σφάλματος Stop και τις παραμέτρους του. Αυτό είναι χρήσιμο για να υπολογίσετε τι ακριβώς οδήγησε στη συντριβή. Η εντολή !analyze -v εμφανίζει τις ίδιες πληροφορίες με την αναλυτική έξοδο. Η εντολή lm N T εμφανίζει μια λίστα με φορτωμένες μονάδες τη στιγμή της συντριβής.

Σε σύγκριση με τα Εργαλεία εντοπισμού σφαλμάτων των Windows, το Dumpchk είναι ένα αρκετά απλό βοηθητικό πρόγραμμα. Χρησιμοποιείται κυρίως για την επαλήθευση της ακεραιότητας των dump αρχείων και για την προβολή τους. Για να ελέγξετε ένα αρχείο ένδειξης σφαλμάτων για σφάλματα, μπορείτε να χρησιμοποιήσετε την επέκταση γραμμής εντολών -e. Για παράδειγμα, θα πληκτρολογήσετε τα ακόλουθα στη γραμμή εντολών:

dumpchk -e DumpFilePath

Άλλες επιλογές Dumpchk περιλαμβάνουν το -v, το οποίο ενεργοποιεί τη λεπτομερή λειτουργία, το -p, το οποίο εξάγει μόνο την κεφαλίδα DMP και το -c, το οποίο εκτελεί μια γρήγορη επικύρωση αποτύπωσης.