Τρόπος επαλήθευσης σύμβολα εντοπισμού σφαλμάτων των Windows

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 148660 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Ανάπτυξη όλων | Σύμπτυξη όλων

Σε αυτήν τη σελίδα

Περίληψη

Τα σύμβολα εντοπισμού σφαλμάτων των Windows πρέπει να ελέγχεται μετά την εκκίνηση το πρόγραμμα εντοπισμού σφαλμάτων πυρήνα (I386kd.exe | Το WinDbg.exe). ενδέχεται να φορτώσει το πρόγραμμα εντοπισμού σφαλμάτων και υπάρχει μια γραμμή εντολών, αλλά εάν τα σύμβολα είναι εσφαλμένες, μελλοντικών σφαλμάτων εντολές αναφορά ορθή συναρτήσεων και μεταβλητών που οδηγεί σε αραιά τα αποτελέσματα. Παρακάτω είναι μερικά σημαίες κόκκινο και μερικές μέθοδοι σημείου ελέγχου εγκυρότητα των συμβόλων.

Περισσότερες πληροφορίες

Αυτό το άρθρο προϋποθέτει ότι εκτελείται το πρόγραμμα εντοπισμού σφαλμάτων πυρήνα και έχει φορτώσει ένα αρχείο Memory.dmp ή είναι συνδεδεμένος σε έναν απομακρυσμένο υπολογιστή. Εντολές παρουσιάζονται οι εμφανίζονται δεν πλήρως τεκμηριωμένη και μόνο αποσπάσματα από την έξοδο.

Περιεχόμενα άρθρου

  • Κατά τη φόρτωση του προγράμματος εντοπισμού σφαλμάτων πυρήνα
  • Ώρα δημιουργίας με έλεγχο! προγράμματα οδήγησης
  • Χρήση Link.exe για να ελέγξετε το χρόνο δημιουργίας
  • Συνάρτηση unassembling
  • Σύμβολα Service Pack

Κατά τη φόρτωση του προγράμματος εντοπισμού σφαλμάτων πυρήνα

Κανονική φόρτωση του προγράμματος εντοπισμού σφαλμάτων πυρήνα εμφανίζει μία από τις παρακάτω υποδείξεις:
Kd > σύστημα μονού επεξεργαστή

0: kd > σύστημα πολλαπλών επεξεργαστών
Η προτροπή εμφανίζεται παρακάτω υποδεικνύει ότι το αρχείο σύμβολο για το Το αρχείο Ntoskrnl.exe είναι εσφαλμένη. Ελέγξτε για να βεβαιωθείτε ότι έχετε το κατάλληλο πολλών επεξεργαστών ή μονού επεξεργαστή πυρήνα και HAL αντιγράφονται στο δέντρο συμβόλων.

Παράδειγμα:
Symbol search path is: C:\symbols
kd: crash dump initialized [c:\dump\memory.dmp]
could not determine the current processor, using zero
Kernel Version 1057 Free loaded @ 0x80100000
Bugcheck 0000001e : c0000005 80151d5b 00000000 00000001
*** Contents Deleted ***
16kd>
				
Όταν το πρόγραμμα εντοπισμού σφαλμάτων πυρήνα φορτώνει το αρχείο Memory.dmp, του πυρήνα Έκδοση καθώς και η αρίθμηση του επεξεργαστή εμφανίζεται με τις πρώτες γραμμές. Επιβεβαιώστε ότι η καταμέτρηση επεξεργαστή αντιστοιχεί με κατάλληλη πυρήνα και HAL. Πληροφορίες προγράμματος οδήγησης σύμβολο εμφανίζεται όπως έχουν φορτωθεί είτε τα σύμβολα ή αναβληθεί.

Φόρτωση δειγμάτων:
Symbol search path is: C:\symbols
kd: crash dump initialized [c:\dump\memory.dmp]
Kernel Version 1057 Free loaded @ 0x80100000
Bugcheck 0000001e : c0000005 80151d5b 00000000 00000001
re-loading all kernel symbols
KD: unloading symbols for "ntoskrnl.exe"
KD: deferring symbol load for "ntoskrnl.exe" at 80100000
KD: Loaded (2248) fpo entries for image (ntoskrnl.exe)
KD: "ntoskrnl.exe" loaded 4074 symbols (80100000-801bbb80)
KD: loaded symbols for "ntoskrnl.exe"
KD: deferring symbol load for "atapi.sys" at fc810000
KD: deferring symbol load for "diskdump.sys" at fc800000
KD: deferring symbol load for "hal.dll" at 80400000
KD: deferring symbol load for "atapi.sys" at 80010000
KD: deferring symbol load for "SCSIPORT.SYS" at 80013000
KD: deferring symbol load for "Atdisk.sys" at 80001000
KD: deferring symbol load for "Scsidisk.sys" at 8001b000
KD: deferring symbol load for "Fastfat.sys" at 80372000
Unable to read image header for Floppy.SYS at fc820000 - status c0000001
*** Contents Deleted ***
KD: deferring symbol load for "srv.sys" at fc9e0000
KD: deferring symbol load for "ntdll.dll" at 77f80000
finished re-loading all kernel symbols
NT!_PspUnhandledExceptionInSystemThread+0x18:
80131ff8 b801000000       mov     eax,0x1
kd>
				
Σημειώστε ότι το πρόγραμμα εντοπισμού σφαλμάτων πυρήνα ήταν "δεν είναι δυνατή Η ανάγνωση της κεφαλίδας εικόνας για Floppy.sys στο fc820000 - c0000001 κατάστασης". Αυτό το μήνυμα είναι κανονική επειδή η κεφαλίδα του συγκεκριμένου προγράμματος οδήγησης δεν είναι αυτήν τη στιγμή στη μνήμη.

Ώρα δημιουργίας με έλεγχο! προγράμματα οδήγησης

Χρήση του ! προγράμματα οδήγησης εντολή για μια λίστα των προγραμμάτων οδήγησης αυτήν τη στιγμή έχει φορτωθεί στη μνήμη. Σημειώστε από τις ημερομηνίες και ώρες των προγραμμάτων οδήγησης και κατά πόσο ήταν δυνατό να φορτωθεί. (Στήλες κώδικα και το μέγεθος των δεδομένων στο ακόλουθο παράδειγμα καταργούνται σε Προσαρμογή του πλάτους του άρθρου).
kd> !drivers
Base       Code Size Data Size  Driver Name        Creation Time
80100000                       Ntoskrnl.exe   Fri May 26 18:18:36 1995
80400000                            Hal.dll   Thu May 11 13:54:18 1995
80010000                          Atapi.sys   Tue May 23 21:01:41 1995
80013000                       Scsiport.sys   Fri May 05 23:11:06 1995
80001000                         Atdisk.sys   Fri May 05 23:10:40 1995
8001b000                       Scsidisk.sys   Fri May 05 23:11:01 1995
80372000                        Fastfat.sys   Mon May 22 23:57:13 1995
fc820000                         Floppy.sys   Header Paged Out
fc830000                       Scsicdrm.sys   Wed May 10 21:57:03 1995
fc840000                         Fs_Rec.sys   Header Paged Out
fc850000                           Null.sys   Header Paged Out
fc860000                           Beep.sys   Header Paged Out
fc870000                       I8042prt.sys   Fri May 05 23:10:42 1995
fc880000                       Mouclass.sys   Fri May 05 23:10:45 1995
fc890000                       Kbdclass.sys   Fri May 05 23:10:44 1995
fc8b0000                       Videoprt.sys   Fri May 05 23:10:05 1995
fc8a0000                             S3.sys   Fri May 19 21:18:06 1995
fc8c0000                            Vga.sys   Fri May 05 23:10:10 1995
fc8d0000                           Msfs.sys   Fri May 05 23:11:57 1995
fc8e0000                           Npfs.sys   Fri May 05 23:11:40 1995
fc900000                           Ndis.sys   Mon May 22 20:23:18 1995
fc8f0000                          El59x.sys   Fri Feb 10 16:18:09 1995
fc940000                            Tdi.sys   Fri May 05 23:13:09 1995
fc920000                            Nbf.sys   Mon May 08 15:00:47 1995
fc950000                        Netbios.sys   Fri May 05 23:13:19 1995
fc960000                        Parport.sys   Header Paged Out
fc970000                       Parallel.sys   Header Paged Out
fc980000                         Serial.sys   Fri May 05 23:11:20 1995
fc990000                            Afd.sys   Header Paged Out
fc9a0000                            Rdr.sys   Wed May 17 17:18:16 1995
fc9e0000                            Srv.sys   Wed May 24 21:56:59 1995
TOTAL:   1ab460 (1709 kb)  3b7c0 ( 237 kb) (    0 kb     0 kb)
kd>
				
Σημειώστε την ώρα δημιουργίας του αρχείου, η οποία είναι η ημερομηνία του αρχείου είναι μεταγλώττιση. Αυτή η ημερομηνία είναι κοντά σφραγίδα Date\Time από το πραγματικό αρχείο όταν Προβολή υποφάκελο Winnt\System32\Drivers χρησιμοποιώντας τη Διαχείριση αρχείων.

Εάν εγγραφείτε για Microsoft Network προγραμματιστές (MSDN) ή έχετε των Windows Κιτ προγράμματος οδήγησης συσκευής (DDK), το εργαλείο μπορεί να χρησιμοποιηθεί για να επιβεβαιώσετε ότι Link.exe το Dbg το αρχείο είναι το ίδιο αρχείο που δημιουργήθηκε όταν το πρόγραμμα οδήγησης έχει μεταγλωττιστεί. "Χρόνος σήμανση ημερομηνίας"στο παρακάτω παράδειγμα ταιριάζει με τη"Δημιουργία ώρα"του Netbios.sys στο παραπάνω εξόδου.

Χρησιμοποιήστε το Link.exe για να ελέγξετε την "χρονική σήμανση ημερομηνίας" το Αρχείο dbg:
ΣΎΝΔΕΣΗ - dump - \symbols\sys\netbios.dbg κεφαλίδες
Microsoft (R) COFF δυαδικό αρχείο Ανατρεπόμενο όχημα έκδοση 3.00.5270
Πνευματικά δικαιώματα (C) Microsoft Corp 1992-1995. Κάθε νόμιμου δικαιώματος.

Η ένδειξη του το αρχείο Netbios.dbg
4944 υπογραφής
0 σημαίες
Μηχάνημα 14 C (i386)
306 χαρακτηριστικά
05 Μαΐου Fri σήμανση ημερομηνίας ώρας 2FAAE94F 23: 13: 19 1995
Άθροισμα ελέγχου 8D0B εικόνας

10000 βάσης εικόνας

Μέγεθος εικόνας 70A0
** Διαγραφή περιεχομένων **

Εάν το ! προγράμματα οδήγησης εντολή δημιουργεί τις γραμμές που μοιάζει με την παρακάτω ένα σημαντικό πίνακα σφαλμάτων είναι κατεστραμμένο. Περαιτέρω ανάλυση της ένδειξης μπορεί να πιθανές.
Δεν είναι δυνατή η ανάγνωση του DosHeader στο 0583002a - κατάσταση 00000000
Δεν είναι δυνατή η ανάγνωση του DosHeader στο 0587002a - κατάσταση 00000000
Δεν είναι δυνατή η ανάγνωση του DosHeader στο 0588002a - κατάσταση 00000000
Δεν είναι δυνατή η ανάγνωση DosHeader σε 058a002a - κατάσταση 00000000
Δεν είναι δυνατή η ανάγνωση DosHeader στο 058c002a - κατάσταση 00000000

Συνάρτηση unassembling

Τα αρχεία συμβόλων ενεργοποιήσετε το πρόγραμμα εντοπισμού σφαλμάτων πυρήνα αναφοράς συναρτήσεις και τις καθολικές μεταβλητές με βάση το όνομα. Σημείου ελέγχου μερικές αποσυναρμολογημένο συναρτήσεις για να βεβαιωθείτε ότι φαίνεται σωστή. Πολλές συναρτήσεις είναι βελτιστοποιημένη μεταγλωττιστή και δεν συμφωνούν απαραίτητα με τα παρακάτω παραδείγματα. Βελτιστοποίηση του μεταγλωττιστή συναρτήσεις αναγνωρίζονται από FPO σε παρένθεση στο όνομα της συνάρτησης.

Συναρτήσεις αρχίζουν συνήθως με είτε ebp"ώθησης" ή "mov eax, FS [000000000]." Βασική γνώση της γλώσσας μηχανής και εμπειρία θα ενεργοποιήσετε μία αναγνωρίζει αυτές τις συναρτήσεις.
  • Λίστα των φορτωμένων λειτουργικών μονάδων
    x *!
  • Λίστα (για παράδειγμα, σύμβολα για μια συγκεκριμένη λειτουργική μονάδα Ntoskrnl.exe).
    x nt! *
  • Επιλέξτε μια λειτουργία για δηλαδή unassemble μεταγλωττιστή δεν βελτιστοποίηση.
    u NT! _NtUnlockFile

Καλή σύμβολα

kd> u NT!_NtUnlockFile
u NT!_NtUnlockFile
NT!_NtUnlockFile:
80156bd8 64a100000000     mov     eax,fs:[00000000]
80156bde 55               push    ebp
80156bdf 8bec             mov     ebp,esp
80156be1 6aff             push    0xff
80156be3 68200d1080       push    0x80100d20
80156be8 68304f1380       push    0x80134f30
80156bed 50               push    eax
80156bee 64892500000000   mov     fs:[00000000],esp
kd>
				
Unassembly της συνάρτησης πρέπει να μοιάζει με το κείμενο παραπάνω. Ωστόσο, το unassembly είναι δυνατό να αλλάξουν. Εάν εμφανίζεται το unassembly σωστή, μπορείτε να υποθέσετε ότι τα σύμβολα έχουν φορτωθεί σωστά για αυτήν τη λειτουργική μονάδα.

Παρακάτω unassembly ξεκινά με "jnz NT! _NTUnlockFile + 0x22." Προφανώς, στην αρχή μιας συνάρτησης θα ξεκινήσει με μια οδηγία μεταπήδησης Κωδικός. Ελέγξτε ξανά το δέντρο συμβόλων.

Εσφαλμένη σύμβολα

kd> u NT!_NTUnlockFile
u NT!_NTUnlockFile
NT!_NtUnlockFile:
801574a4 7520             jnz     NT!_NtUnlockFile+0x22 (801574c6)
801574a6 6a00             push    0x0
801574a8 8d45dc           lea     eax,[ebp-0x24]
801574ab 50               push    eax
801574ac 53               push    ebx
801574ad ff356c361480     push    dword ptr [NT!_CcNoDelay+0x4 (8014366c)]
801574b3 6a01             push    0x1
801574b5 ff7508           push    dword ptr [ebp+0x8]
				

Σύμβολα Service Pack

Υπάρχουν φορές όταν είναι δύσκολο να ταιριάζουν με τα σύμβολα με ένα συγκεκριμένη εγκατάσταση. Σε κάποια χρονική στιγμή, θα μπορούσε να έχει προστεθεί μια υπηρεσία ότι τα απαιτούμενα αντιγραφή αρχείων από το CD-ROM εγκατάστασης των Windows, η οποία αντιγράφεται αρχεία που ενημερώθηκαν με το service pack. Θα πρέπει να εφαρμόσετε ξανά το το Service pack και τυχόν τρίτων κατασκευαστών υποστηρίζουν δίσκους μετά την εγκατάσταση του συστήματος, αλλαγή που αντιγράφει αρχεία από το CD-ROM εγκατάστασης των Windows. Τα σύμβολα πρέπει να είναι εφαρμόζονται με τη σειρά της εγκατάστασης.

ΠΡΌΣΘΕΤΕΣ ΠΛΗΡΟΦΟΡΊΕΣ

Για να βρείτε σειρά πυρήνα Debug πώς να τα άρθρα, αναζήτηση η λέξη-κλειδί: debugref.

2.0.X WinDbg τεχνικές σύμβολο

Στο πρόγραμμα εντοπισμού σφαλμάτων έκδοση 2.0.x και μεγαλύτερο του Microsoft Προγράμματα εντοπισμού σφαλμάτων είναι βήματα επαλήθευσης πρόσθετο σύμβολο που μπορεί να χρησιμοποιηθεί. Για περισσότερες πληροφορίες, ανατρέξτε στην ακόλουθη τοποθεσία της Microsoft στο Web:
Κιτ ανάπτυξης προγραμμάτων οδήγησης

Ιδιότητες

Αναγν. άρθρου: 148660 - Τελευταία αναθεώρηση: Πέμπτη, 26 Μαΐου 2011 - Αναθεώρηση: 4.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Server 3.51
  • Windows Server 2008 for Itanium-Based Systems
  • Windows Server 2008 R2 Datacenter
  • Windows Server 2008 R2 Enterprise
  • Windows Server 2008 R2 Standard
  • Windows Server 2008 Datacenter
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Standard
  • Microsoft Windows Server 2003 R2 Datacenter Edition (32-Bit x86)
  • Microsoft Windows Server 2003 R2 Datacenter x64 Edition
  • Microsoft Windows Server 2003 R2 Enterprise Edition (32-Bit x86)
  • Microsoft Windows Server 2003 R2 Enterprise x64 Edition
  • Microsoft Windows Server 2003 R2 Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003 R2 Standard x64 Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Small Business Server 2003 R2 Premium Edition
  • Microsoft Windows Small Business Server 2003 R2 Standard Edition
  • Microsoft Windows Small Business Server 2003 Standard Edition
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Home Edition N
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Professional N
  • Microsoft Windows XP Professional x64 Edition
  • Windows Vista Enterprise 64-bit edition
  • Windows Vista Home Basic 64-bit edition
  • Windows Vista Home Premium 64-bit edition
  • Windows Vista Ultimate 64-bit edition
  • Windows 7 Beta
  • Windows Vista Business
  • Windows Vista Business 64-bit edition
  • Windows Vista Business N
  • Windows Vista Business N 64-bit Edition
  • Windows Vista Enterprise
  • Windows Vista Home Basic
  • Windows Vista Home Basic N
  • Windows Vista Home Basic N 64-bit Edition
  • Windows Vista Home Premium
  • Windows Vista Ultimate
Λέξεις-κλειδιά: 
kbinfo kbmt KB148660 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:148660

Αποστολή σχολίων

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com