Εγκατάσταση και ρύθμιση παραμέτρων του WinDBG για την ανάλυση των απορριμμάτων μνήμης. Εργαλεία εντοπισμού σφαλμάτων των Windows: Διάγνωση και διόρθωση BSOD Τρόπος ενεργοποίησης της απόρριψης μνήμης στα Windows

Για να προσδιορίσετε τις αιτίες των μπλε οθονών (BSOD), απαιτείται ανάλυση της ένδειξης αποθήκευσης μνήμης. Στη συντριπτική πλειοψηφία των περιπτώσεων αρκεί ένα minidump, το οποίο δημιουργείται από το σύστημα σε περίπτωση κρίσιμων σφαλμάτων.
Αυτό το άρθρο παρέχει οδηγίες βήμα προς βήμα για την εγκατάσταση και τη ρύθμιση παραμέτρων του WinDBG, ενός ισχυρού εργαλείου εντοπισμού σφαλμάτων που σας επιτρέπει να προσδιορίσετε την πραγματική αιτία ενός BSOD.

Βήμα 1 — Ρύθμιση εγγραφής αποθήκευσης μικρής μνήμης

Βήμα 2 — Εγκατάσταση του WinDBG

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

  • Windows 10 SDK (λήψη διαδικτυακού προγράμματος εγκατάστασης)
  • Windows 8.1 SDK (λήψη διαδικτυακού προγράμματος εγκατάστασης)

Βήμα 3 — Αντιστοίχιση αρχείων .dmp στο WinDBG

Αντιστοιχίστε τα αρχεία σας .dmp στο WinDBG για να διευκολύνετε την ανάγνωση και την ανάλυση των δεδομένων αποθήκευσης μνήμης. Αυτό θα σας επιτρέψει να ανοίξετε αρχεία ένδειξης σφαλμάτων από τον Explorer απευθείας στο WinDBG, παρακάμπτοντας την προκαταρκτική εκκίνησή του.


Βήμα 4 — Ρύθμιση του διακομιστή συμβόλων για λήψη αρχείων συμβόλων εντοπισμού σφαλμάτων


Η εγκατάσταση και η αρχική διαμόρφωση του WinDBG έχει πλέον ολοκληρωθεί. Για να αλλάξετε την εμφάνισή του, μπορείτε να μεταβείτε στο μενού θέα- ρυθμίσεις γραμματοσειράς που θα βρείτε επιλέγοντας το στοιχείο Γραμματοσειράκαι ρυθμίσεις παραθύρου κονσόλας στο Επιλογές.

Για να προσδιορίσετε τις αιτίες των μπλε οθονών (BSOD), απαιτείται ανάλυση της ένδειξης αποθήκευσης μνήμης. Στη συντριπτική πλειοψηφία των περιπτώσεων αρκεί ένα minidump, το οποίο δημιουργείται από το σύστημα σε περίπτωση κρίσιμων σφαλμάτων.
Αυτό το άρθρο παρέχει οδηγίες βήμα προς βήμα για την εγκατάσταση και τη ρύθμιση παραμέτρων του WinDBG, ενός ισχυρού εργαλείου εντοπισμού σφαλμάτων που σας επιτρέπει να προσδιορίσετε την πραγματική αιτία ενός BSOD.

Βήμα 1 — Ρύθμιση εγγραφής αποθήκευσης μικρής μνήμης

Βήμα 2 — Εγκατάσταση του WinDBG

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

  • Windows 10 SDK (λήψη διαδικτυακού προγράμματος εγκατάστασης)
  • Windows 8.1 SDK (λήψη διαδικτυακού προγράμματος εγκατάστασης)

Βήμα 3 — Αντιστοίχιση αρχείων .dmp στο WinDBG

Αντιστοιχίστε τα αρχεία σας .dmp στο WinDBG για να διευκολύνετε την ανάγνωση και την ανάλυση των δεδομένων αποθήκευσης μνήμης. Αυτό θα σας επιτρέψει να ανοίξετε αρχεία ένδειξης σφαλμάτων από τον Explorer απευθείας στο WinDBG, παρακάμπτοντας την προκαταρκτική εκκίνησή του.


Βήμα 4 — Ρύθμιση του διακομιστή συμβόλων για λήψη αρχείων συμβόλων εντοπισμού σφαλμάτων


Η εγκατάσταση και η αρχική διαμόρφωση του WinDBG έχει πλέον ολοκληρωθεί. Για να αλλάξετε την εμφάνισή του, μπορείτε να μεταβείτε στο μενού θέα- ρυθμίσεις γραμματοσειράς που θα βρείτε επιλέγοντας το στοιχείο Γραμματοσειράκαι ρυθμίσεις παραθύρου κονσόλας στο Επιλογές.

Εισαγωγή στο WinDBG - Μέρος 1

Αλεξάντερ Αντίποφ

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


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

Αυτό είναι το πρώτο άρθρο μιας σειράς για το WinDBG. Λίστα όλων των άρθρων που περιλαμβάνονται σε αυτήν τη σειρά:

  • Μέρος 1 - εγκατάσταση, διεπαφή, σύμβολα, απομακρυσμένος/τοπικός εντοπισμός σφαλμάτων, σύστημα βοήθειας, λειτουργικές μονάδες, μητρώα.
  • Μέρος 2 - σημεία διακοπής.
  • Μέρος 3 - επιθεώρηση μνήμης, πρόγραμμα εντοπισμού σφαλμάτων βήμα προς βήμα, συμβουλές και κόλπα.

Σε αυτό το άρθρο θα εξετάσουμε την τοποθέτηση και την προσάρτηση σε μια διαδικασία και στα ακόλουθα θα καλύψουμε σημεία διακοπής, μεμονωμένο βήμα και επιθεώρηση μνήμης.

Εγκατάσταση WinDBG

Σε σύγκριση με τα Windows 7, η διαδικασία εγκατάστασης για το WinDBG στα Windows 8 έχει αλλάξει ελαφρώς. Σε αυτήν την ενότητα, θα καλύψουμε την εγκατάσταση του προγράμματος εντοπισμού σφαλμάτων και για τα δύο λειτουργικά συστήματα.

Εγκατάσταση του WinDBG στα Windows 8

Στα Windows 8, το WinDBG περιλαμβάνεται στο κιτ προγραμμάτων οδήγησης των Windows (WDK). Μπορείτε να εγκαταστήσετε το Visual Studio και το WDK ή να εγκαταστήσετε ξεχωριστά το πακέτο Εργαλείων εντοπισμού σφαλμάτων για Windows 8.1, το οποίο περιλαμβάνει το WinDBG.

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

Εικόνα 1: Επιλογή του τύπου εγκατάστασης

Στο επόμενο παράθυρο, πρέπει να καταργήσετε την επιλογή όλων των στοιχείων εκτός από τα "Εργαλεία εντοπισμού σφαλμάτων για Windows" και να κάνετε κλικ στο κουμπί "Λήψη".

Μόλις το πρόγραμμα εγκατάστασης ολοκληρώσει την εργασία του, μεταβείτε στον κατάλογο όπου έγινε λήψη του πακέτου (από προεπιλογή είναι c:\Users\Username\Downloads\Windows Kits\8.1\StandaloneSDK) και προχωρήστε στη διαδικασία εγκατάστασης.

Εγκατάσταση του WinDBG σε Windows 7 και παλαιότερες εκδόσεις

Για Windows 7 και παλαιότερες εκδόσεις, το WinDBG αποτελεί μέρος του πακέτου "Εργαλεία εντοπισμού σφαλμάτων για Windows", το οποίο περιλαμβάνεται στο SDK των Windows και στο .Net Framework. Θα σας ζητηθεί να κάνετε λήψη του προγράμματος εγκατάστασης και, στη συνέχεια, να επιλέξετε "Εργαλεία εντοπισμού σφαλμάτων για Windows" κατά τη διαδικασία εγκατάστασης.

Κατά την εγκατάσταση, επιλέγω την επιλογή "Εργαλεία εντοπισμού σφαλμάτων" κάτω από τα "Πακέτα με δυνατότητα αναδιανομής" για να δημιουργήσω ένα αυτόνομο πρόγραμμα εγκατάστασης για να διευκολύνω τις επόμενες εγκαταστάσεις.

Εικόνα 2: Επιλογή εγκατάστασης για τη δημιουργία ενός αυτόνομου προγράμματος εγκατάστασης

Μετά την ολοκλήρωση της εγκατάστασης, θα πρέπει να έχετε προγράμματα εγκατάστασης WinDBG για διάφορες πλατφόρμες (στον κατάλογο c:\Program Files\Microsoft SDKs\Windows\v7.1\Redist\Debugging Tools for Windows\).

Εικόνα 3: Φάκελος με προγράμματα εγκατάστασης WinDBG για διάφορες πλατφόρμες

Διεπαφή WinDBG

Εικόνα 4: Εμφάνιση WinDBG

Μόλις δείτε για πρώτη φορά την εμφάνιση και την αίσθηση του WinDGB, θα συνειδητοποιήσετε ότι το πρόγραμμα εντοπισμού σφαλμάτων είναι τρομακτικά απλό. Οι περισσότερες από τις λειτουργίες WinDBG μαθαίνονται κατά τη διεργασία εντοπισμού σφαλμάτων. Αντί να χάνουμε χρόνο στην περιγραφή της διεπαφής, στις επόμενες ενότητες θα καλύψουμε μόνο τα πιο σημαντικά σημεία.

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

Εικόνα 5: Παράθυρο εντολών WinDBG

Σύμβολα

Στις περισσότερες περιπτώσεις, το WinDBG δεν απαιτεί ειδικές ρυθμίσεις και λειτουργεί σωστά αμέσως. Αλλά ένα σημαντικό πράγμα που πρέπει να τροποποιηθεί είναι τα σύμβολα. Τα σύμβολα είναι αρχεία που δημιουργούνται μαζί με το εκτελέσιμο αρχείο κατά τη μεταγλώττιση του προγράμματος και περιέχουν πληροφορίες εντοπισμού σφαλμάτων (συναρτήσεις και ονόματα μεταβλητών). Οι πληροφορίες εντοπισμού σφαλμάτων σάς επιτρέπουν να εξερευνήσετε τη λειτουργικότητα μιας εφαρμογής κατά την αποσφαλμάτωση ή την αποσυναρμολόγηση. Πολλά στοιχεία της Microsoft μεταγλωττίζονται με σύμβολα που διανέμονται μέσω του διακομιστή συμβόλων της Microsoft. Με τα υπόλοιπα εκτελέσιμα αρχεία, όλα δεν είναι τόσο ρόδινα - πολύ σπάνια αρχεία με πληροφορίες εντοπισμού σφαλμάτων συνοδεύονται από την εφαρμογή. Στις περισσότερες περιπτώσεις, οι εταιρείες περιορίζουν την πρόσβαση σε τέτοιες πληροφορίες.

Για να ρυθμίσετε τις παραμέτρους του WinDBG για χρήση του Microsoft Symbol Server, μεταβείτε στην ενότητα File:Symbol File Path και ορίστε τη διαδρομή σε SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols. Φυσικά, είναι λίγο περίεργο ότι οι αστερίσκοι χρησιμοποιούνται ως οριοθέτες. Αφού ρυθμίσετε τον διακομιστή συμβόλων της Microsoft, τα σύμβολα θα ληφθούν στο φάκελο C:\Symbols.

Εικόνα 6: Ρύθμιση διακομιστή συμβόλων της Microsoft

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

SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols;c:\SomeOtherSymbolFolder

Προσθήκη συμβόλων κατά τον εντοπισμό σφαλμάτων

Εάν χρειάζεται να εισαγάγετε σύμβολα κατά τον εντοπισμό σφαλμάτων, μπορείτε να το κάνετε με το .sympath (το παράθυρο εντολών θα εμφανιστεί όταν κολλήσετε στη διαδικασία). Για παράδειγμα, για να προσθέσετε το φάκελο c:\SomeOtherSymbolFolder, πληκτρολογήστε την ακόλουθη εντολή:

0:025> .sympath+ c:\SomeOtherSymbolFolder
Η διαδρομή αναζήτησης συμβόλων είναι: SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols;c:\SomeOtherSymbolFolder
Η διευρυμένη διαδρομή αναζήτησης συμβόλων είναι: srv*c:\symbols*http://msdl.microsoft.com/download/symbols;c:\someothersymbolfolder

Είναι καλή ιδέα να φορτώσετε ξανά τα σύμβολα αφού προσθέσετε ή αλλάξετε διαδρομές:

0:025> .reload
Επαναφόρτωση των τρεχουσών μονάδων
................................................................
...............................................

Έλεγχος φορτωμένων συμβόλων

Για να δείτε ποιες μονάδες έχουν φορτωμένα σύμβολα, μπορείτε να χρησιμοποιήσετε την εντολή x*!. Αν και το WinDBG φορτώνει σύμβολα μόνο όπως χρειάζεται, το x*! θα εμφανίσει σύμβολα που μπορούν να φορτωθούν. Μπορείτε να αναγκάσετε τη φόρτωση συμβόλων χρησιμοποιώντας την εντολή ld * (αυτό μπορεί να πάρει λίγο χρόνο και μπορείτε να σταματήσετε αυτή τη διαδικασία μεταβαίνοντας στο Debug:Break).

Τώρα μπορούμε να δούμε τα σύμβολα για κάθε ενότητα.

Εικόνα 8: Λίστα συμβόλων

Εντοπισμός σφαλμάτων μιας τοπικής διαδικασίας

Κατά τον εντοπισμό σφαλμάτων μιας τοπικής διαδικασίας, έχετε δύο επιλογές:

  1. Επισύναψη σε μια διαδικασία που ήδη εκτελείται.
  2. Διαδικασία εκκίνησης μέσω WinDBG.

Κάθε μέθοδος έχει τα δικά της πλεονεκτήματα και μειονεκτήματα. Εάν, ας πούμε, εκτελείτε το πρόγραμμα μέσω του WinDBG, τότε έχετε διαθέσιμες κάποιες ειδικές επιλογές εντοπισμού σφαλμάτων (για παράδειγμα, εντοπισμός σφαλμάτων σωρού) που μπορεί να προκαλέσουν διακοπή λειτουργίας της εφαρμογής. Από την άλλη πλευρά, υπάρχουν επίσης προγράμματα που κολλάνε όταν επισυνάπτετε ένα πρόγραμμα εντοπισμού σφαλμάτων σε αυτά. Ορισμένες εφαρμογές (ειδικά κακόβουλο λογισμικό) ελέγχουν την παρουσία ενός προγράμματος εντοπισμού σφαλμάτων στο σύστημα κατά την εκκίνηση και, κατά συνέπεια, σε αυτήν την περίπτωση είναι λογικό να προσκολλώνται σε μια ήδη εκτελούμενη διαδικασία. Μερικές φορές υπάρχει διόρθωση σφαλμάτων μιας υπηρεσίας των Windows που ορίζει ορισμένες παραμέτρους κατά την εκκίνηση, επομένως για να απλοποιηθεί η διαδικασία εντοπισμού σφαλμάτων, είναι επίσης καλύτερο να συνδέσετε μια διαδικασία που εκτελείται αντί να ξεκινήσετε την υπηρεσία μέσω ενός προγράμματος εντοπισμού σφαλμάτων. Μερικοί άνθρωποι ισχυρίζονται ότι η εκτέλεση μιας διαδικασίας μέσω ενός προγράμματος εντοπισμού σφαλμάτων έχει σοβαρό αντίκτυπο στην απόδοση. Με λίγα λόγια, δοκιμάστε και τα δύο και επιλέξτε αυτό που σας ταιριάζει καλύτερα. Εάν για κάποιο λόγο προτιμάτε μια συγκεκριμένη μέθοδο, μοιραστείτε τις σκέψεις σας στα σχόλια!

Ξεκινώντας μια διαδικασία

Εάν πραγματοποιείτε διόρθωση σφαλμάτων σε μια αυτόνομη εφαρμογή που εκτελείται τοπικά και δεν είναι συνδεδεμένη σε δίκτυο, ίσως θελήσετε να την εκτελέσετε μέσω του WinDBG. Ωστόσο, αυτό δεν σημαίνει ότι δεν μπορείτε να συνδεθείτε σε μια διαδικασία που ήδη εκτελείται. Επιλέξτε τον πιο βολικό τρόπο για εσάς.

Η έναρξη της διαδικασίας δεν είναι δύσκολη. Μεταβείτε στο "File:Open Executable" και επιλέξτε το εκτελέσιμο αρχείο που θέλετε να διορθώσετε. Μπορείτε επίσης να παρέχετε ορίσματα ή να ορίσετε τον κατάλογο έναρξης:

Εικόνα 9: Επιλογή εκτελέσιμου για εντοπισμό σφαλμάτων

Σύνδεση διαδικασίας

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

Για να επισυνάψετε μια διαδικασία που ήδη εκτελείται, μεταβείτε στο "Αρχείο: Επισύναψη σε διεργασία" και, στη συνέχεια, επιλέξτε το PID ή το όνομα της διαδικασίας. Θυμηθείτε ότι πρέπει να έχετε τα κατάλληλα δικαιώματα για να κολλήσετε στη διαδικασία.

Εικόνα 10: Επιλογή διαδικασίας για σύνδεση

Εάν, μετά τη σύνδεση, η εφαρμογή έχει αναστείλει την εργασία της, μπορείτε να χρησιμοποιήσετε τη λειτουργία "Μη επενδυτική" επιλέγοντας το κατάλληλο πλαίσιο.

Εντοπισμός σφαλμάτων μιας απομακρυσμένης διαδικασίας

Μερικές φορές μπορεί να χρειαστεί να κάνετε εντοπισμό σφαλμάτων σε μια διαδικασία σε ένα απομακρυσμένο σύστημα. Θα ήταν πολύ πιο βολικό να χειριστείτε αυτήν την εργασία με έναν τοπικό εντοπισμό σφαλμάτων αντί να χρησιμοποιήσετε μια εικονική μηχανή ή RDP. Ή ίσως κάνετε εντοπισμό σφαλμάτων στη διαδικασία LoginUI.exe, η οποία είναι διαθέσιμη μόνο όταν το σύστημα είναι κλειδωμένο. Σε περιπτώσεις όπως αυτή, μπορείτε να χρησιμοποιήσετε την τοπική έκδοση του WinDBG και να επισυνάψετε διεργασίες από απόσταση. Για την επίλυση αυτών των προβλημάτων, υπάρχουν δύο πιο κοινές μέθοδοι.

Υπάρχουσες συνεδρίες εντοπισμού σφαλμάτων

Εάν έχετε ήδη ξεκινήσει τον εντοπισμό σφαλμάτων του προγράμματος τοπικά (επισυνάπτοντας ή εκκινώντας μια διαδικασία μέσω του WinDBG), τότε μπορείτε να εισαγάγετε μια συγκεκριμένη εντολή και το WinDBG θα ξεκινήσει έναν "ακροατή" (ακρόαση) στον οποίο μπορεί να συνδεθεί ο απομακρυσμένος εντοπισμός σφαλμάτων. Για να το κάνετε αυτό, χρησιμοποιήστε την εντολή .server:

Διακομιστής tcp:port=5005

Αφού εκτελέσετε την παραπάνω εντολή, ενδέχεται να δείτε μια προειδοποίηση όπως αυτή:

Εικόνα 11: Προειδοποιητικό μήνυμα που μπορεί να εμφανιστεί μετά την εκτέλεση της εντολής για τη δημιουργία ενός "ακροατή"

Στη συνέχεια, το WinDBG θα αναφέρει ότι ο διακομιστής εκτελείται:

0:005> .server tcp:port=5005
0: -απομακρυσμένο tcp:Port=5005,Server=USER-PC

Τώρα μπορείτε να συνδεθείτε από έναν απομακρυσμένο κεντρικό υπολογιστή σε μια ήδη υπάρχουσα περίοδο λειτουργίας εντοπισμού σφαλμάτων μεταβαίνοντας στο "File:Connect to a Remote Session" και εισάγοντας κάτι σαν αυτό στο πεδίο κειμένου: tcp:Port=5005,Server=192.168.127.138

Εικόνα 12: Απομακρυσμένη σύνδεση σε μια περίοδο λειτουργίας εντοπισμού σφαλμάτων

Μετά τη σύνδεση, θα λάβετε επιβεβαίωση στον απομακρυσμένο πελάτη:


ο διακομιστής ξεκίνησε. Ο πελάτης μπορεί να συνδεθεί με οποιαδήποτε από αυτές τις γραμμές εντολών
0: -απομακρυσμένο tcp:Port=5005,Server=USER-PC
MACHINENAME\User (tcp 192.168.127.138:13334) συνδεδεμένος τη Δευτέρα 16 Δεκεμβρίου 09:03:03 2013

και το μήνυμα στην τοπική έκδοση του προγράμματος εντοπισμού σφαλμάτων:

MACHINENAME\User (tcp 192.168.127.138:13334) συνδεδεμένος τη Δευτέρα 16 Δεκεμβρίου 09:03:03 2013

Δημιουργήστε έναν απομακρυσμένο διακομιστή

Μπορείτε επίσης να δημιουργήσετε έναν ξεχωριστό διακομιστή WinDBG, να συνδεθείτε σε αυτόν απομακρυσμένα και να επιλέξετε μια διαδικασία για εντοπισμό σφαλμάτων. Αυτό μπορεί να γίνει χρησιμοποιώντας το αρχείο dbgsrv.exe όπου σκοπεύετε να εντοπίσετε διεργασίες. Για να ξεκινήσετε έναν τέτοιο διακομιστή, εκτελέστε την ακόλουθη εντολή:

dbgsrv.exe -t tcp:port=5005

Εικόνα 13: Εκκίνηση απομακρυσμένου διακομιστή

Και πάλι, μπορεί να λάβετε μια προειδοποίηση ασφαλείας που πρέπει να αποδεχτείτε:

Εικόνα 14: Μήνυμα ασφαλείας που μπορεί να εμφανιστεί κατά την εκκίνηση του διακομιστή εντοπισμού σφαλμάτων

Μπορείτε να συνδεθείτε στον διακομιστή εντοπισμού σφαλμάτων εάν μεταβείτε στο αρχείο "File: Connect to Remote Stub" και εισαγάγετε την ακόλουθη γραμμή στο πεδίο κειμένου: tcp:Port=5005,Server=192.168.127.138

Εικόνα 15: Σύνδεση στον διακομιστή εντοπισμού σφαλμάτων

Μετά τη σύνδεση, δεν θα λάβετε κανένα σήμα ότι είστε συνδεδεμένοι, αλλά εάν μεταβείτε στο "Αρχείο: Επισύναψη σε διεργασία", θα δείτε μια λίστα διεργασιών διακομιστή εντοπισμού σφαλμάτων (όπου εκτελείται το dbgsrv.exe). Τώρα μπορείτε να κολλήσετε στη διαδικασία σαν να το κάνατε τοπικά.

Σύστημα βοήθειας

Το σύστημα βοήθειας στο WinDBG είναι υπέροχο. Εκτός από το να μάθετε κάτι νέο, θα πρέπει να μπορείτε να λαμβάνετε πληροφορίες βοήθειας σχετικά με μια εντολή. Χρησιμοποιήστε την εντολή .hh για πρόσβαση στη βοήθεια του WinDBG:

Μπορείτε επίσης να λάβετε πληροφορίες βοήθειας για μια συγκεκριμένη εντολή. Για παράδειγμα, για να λάβετε βοήθεια σχετικά με την εντολή .reload, χρησιμοποιήστε την ακόλουθη εντολή:

windbg> .hh .reload

Ή απλώς μεταβείτε στην ενότητα "Βοήθεια:Περιεχόμενα".

Ενότητες

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

Μόλις συνδεθεί στη διαδικασία, το WinDBG θα εμφανίσει αυτόματα τις φορτωμένες μονάδες. Για παράδειγμα, παρακάτω είναι οι μονάδες μετά τη σύνδεση στο calc.exe:

Microsoft (R) Windows Debugger Έκδοση 6.12.0002.633 X86
Πνευματικά δικαιώματα (γ) Microsoft Corporation. Ολα τα δικαιώματα διατηρούνται.

*** αναμονή με επισύναψη σε εκκρεμότητα
Η διαδρομή αναζήτησης συμβόλων είναι: SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols
Η εκτελέσιμη διαδρομή αναζήτησης είναι:
ModLoad: 00a70000 00b30000 C:\Windows\system32\calc.exe
ModLoad: 77630000 7776c000 C:\Windows\SYSTEM32\ntdll.dll
ModLoad: 77550000 77624000 C:\Windows\system32\kernel32.dll
ModLoad: 75920000 7596a000 C:\Windows\system32\KERNELBASE.dll
ModLoad: 76410000 77059000 C:\Windows\system32\SHELL32.dll
ModLoad: 77240000 772ec000 C:\Windows\system32\msvcrt.dll
ModLoad: 76300000 76357000 C:\Windows\system32\SHLWAPI.dll
ModLoad: 75cd0000 75d1e000 C:\Windows\system32\GDI32.dll
ModLoad: 75fa0000 76069000 C:\Windows\system32\USER32.dll
ModLoad: 777b0000 777ba000 C:\Windows\system32\LPK.dll
ModLoad: 774b0000 7754d000 C:\Windows\system32\USP10.dll
ModLoad: 73110000 732a0000 C:\Windows\WinSxS\x86_microsoft.windows.gdiplus_
6595b64144ccf1df_1.1.7600.16385_none_72fc7cbf861225ca\gdiplus.dll
ModLoad: 75a80000 75bdc000 C:\Windows\system32\ole32.dll
ModLoad: 76360000 76401000 C:\Windows\system32\RPCRT4.dll
ModLoad: 777c0000 77860000 C:\Windows\system32\ADVAPI32.dll
ModLoad: 75be0000 75bf9000 C:\Windows\SYSTEM32\sechost.dll
ModLoad: 76270000 762ff000 C:\Windows\system32\OLEAUT32.dll
ModLoad: 74590000 745d0000 C:\Windows\system32\UxTheme.dll
ModLoad: 74710000 748ae000 C:\Windows\WinSxS\x86_microsoft.windows.common-
ModLoad: 703d0000 70402000 C:\Windows\system32\WINMM.dll
ModLoad: 74c80000 74c89000 C:\Windows\system32\VERSION.dll
ModLoad: 77770000 7778f000 C:\Windows\system32\IMM32.DLL
ModLoad: 75c00000 75ccc000 C:\Windows\system32\MSCTF.dll
ModLoad: 74130000 7422b000 C:\Windows\system32\WindowsCodecs.dll
ModLoad: 74260000 74273000 C:\Windows\system32\dwmapi.dll
ModLoad: 756d0000 756dc000 C:\Windows\system32\CRYPTBASE.dll
ModLoad: 75e60000 75ee3000 C:\Windows\system32\CLBCatQ.DLL
ModLoad: 6ef10000 6ef4c000 C:\Windows\system32\oleacc.dll

Αργότερα στη διαδικασία εντοπισμού σφαλμάτων, μπορείτε να εμφανίσετε ξανά αυτήν τη λίστα με την εντολή lmf:

0:005>lmf
όνομα ενότητας έναρξης τέλους
00a70000 00b30000 calc C:\Windows\system32\calc.exe
6ef10000 6ef4c000 oleacc C:\Windows\system32\oleacc.dll
703d0000 70402000 WINMM C:\Windows\system32\WINMM.dll
73110000 732a0000 gdiplus C:\Windows\WinSxS\x86_microsoft.windows.gdiplus_6595b64144ccf1df_
1.1.7600.16385_none_72fc7cbf861225ca\gdiplus.dll
74130000 7422b000 WindowsCodecs C:\Windows\system32\WindowsCodecs.dll
74260000 74273000 dwmapi C:\Windows\system32\dwmapi.dll
74590000 745d0000 UxTheme C:\Windows\system32\UxTheme.dll
74710000 748ae000 COMCTL32 C:\Windows\WinSxS\x86_microsoft.windows.common-
controls_6595b64144ccf1df_6.0.7600.16385_none_421189da2b7fabfc\COMCTL32.dll
74c80000 74c89000 ΕΚΔΟΣΗ C:\Windows\system32\VERSION.dll
756d0000 756dc000 CRYPTBASE C:\Windows\system32\CRYPTBASE.dll
75920000 7596a000 KERNELBASE C:\Windows\system32\KERNELBASE.dll
75a80000 75bdc000 ole32 C:\Windows\system32\ole32.dll
75be0000 75bf9000 sechost C:\Windows\SYSTEM32\sechost.dll
75c00000 75cccc000 MSCTF C:\Windows\system32\MSCTF.dll
75cd0000 75d1e000 GDI32 C:\Windows\system32\GDI32.dll
75e60000 75ee3000 CLBCatQ C:\Windows\system32\CLBCatQ.DLL
75fa0000 76069000 USER32 C:\Windows\system32\USER32.dll
76270000 762ff000 OLEAUT32 C:\Windows\system32\OLEAUT32.dll
76300000 76357000 SHLWAPI C:\Windows\system32\SHLWAPI.dll
76360000 76401000 RPCRT4 C:\Windows\system32\RPCRT4.dll
76410000 77059000 SHELL32 C:\Windows\system32\SHELL32.dll
77240000 772ec000 msvcrt C:\Windows\system32\msvcrt.dll
774b0000 7754d000 USP10 C:\Windows\system32\USP10.dll
77550000 77624000 kernel32 C:\Windows\system32\kernel32.dll
77630000 7776c000 ntdll C:\Windows\SYSTEM32\ntdll.dll
77770000 7778f000 IMM32 C:\Windows\system32\IMM32.DLL
777b0000 777ba000LPK C:\Windows\system32\LPK.dll
777c0000 77860000 ADVAPI32 C:\Windows\system32\ADVAPI32.dll

Μπορείτε επίσης να μάθετε τη διεύθυνση λήψης για μια συγκεκριμένη ενότητα χρησιμοποιώντας την εντολή "lmf m":

0:005> lmf m kernel32
όνομα ενότητας έναρξης τέλους
77550000 77624000 kernel32 C:\Windows\system32\kernel32.dll

Μπορείτε επίσης να λάβετε πληροφορίες σχετικά με την κεφαλίδα εικόνας μιας συγκεκριμένης μονάδας χρησιμοποιώντας την επέκταση !dh (το θαυμαστικό υποδεικνύει μια επέκταση):

0:005> !dh kernel32

Τύπος αρχείου: DLL
ΤΙΜΕΣ ΚΕΦΑΛΗΣ ΑΡΧΕΙΟΥ
Μηχάνημα 14C (i386)
4 αριθμός ενοτήτων
4A5BDAAD σφραγίδα ημερομηνίας ώρας Δευτ. 13 Ιουλίου 21:09:01 2009

0 δείκτης αρχείου στον πίνακα συμβόλων
0 αριθμός συμβόλων
Μέγεθος E0 ​​της προαιρετικής κεφαλίδας
2102 χαρακτηριστικά
Εκτελέσιμα
Μηχανή λέξεων 32 bit
DLL

ΠΡΟΑΙΡΕΤΙΚΑ ΤΙΜΕΣ ΚΕΦΑΛΗΣ
10Β μαγεία#
Έκδοση σύνδεσης 9.00
Κωδικός μεγέθους C4600
Μέγεθος C800 αρχικοποιημένων δεδομένων
0 μέγεθος μη αρχικοποιημένων δεδομένων
510C5 διεύθυνση του σημείου εισόδου
1000 βασικός κωδικός
----- νέος -----
77550000 βάση εικόνας
Ευθυγράμμιση τομέων 1000
200 στοίχιση αρχείων
3 υποσύστημα (Windows CUI)
Έκδοση λειτουργικού συστήματος 6.01
Έκδοση εικόνας 6.01
Έκδοση υποσυστήματος 6.01
Εικόνα μεγέθους D4000
Επικεφαλίδες μεγέθους 800
D5597 άθροισμα ελέγχου
00040000 μέγεθος αποθέματος στοίβας
00001000 μέγεθος δέσμευσης στοίβας
00100000 μέγεθος αποθέματος σωρού
00001000 δέσμευση μεγέθους σωρού
140 χαρακτηριστικά DLL
δυναμική βάση
Συμβατό με NX
B4DA8 [A915] διεύθυνση του Καταλόγου Εξαγωγών
BF6C0 [ 1F4] διεύθυνση του Καταλόγου Εισαγωγών
C7000 [ 520] διεύθυνση του καταλόγου πόρων
0 [ 0] διεύθυνση του καταλόγου εξαιρέσεων
0 [ 0] διεύθυνση του καταλόγου ασφαλείας
Διεύθυνση C8000 [B098] του Base Relocation Directory
C5460 [ 38] διεύθυνση του καταλόγου εντοπισμού σφαλμάτων
0 [ 0] διεύθυνση του καταλόγου περιγραφής
0 [ 0] διεύθυνση Ειδικού Καταλόγου
0 [ 0] διεύθυνση του καταλόγου αποθήκευσης νημάτων
816B8 [ 40] διεύθυνση του Load Configuration Directory
278 [ 408] διεύθυνση του Καταλόγου Δεσμευμένων Εισαγωγών
1000 [DE8] διεύθυνση του καταλόγου Εισαγωγής πίνακα διευθύνσεων
0 [ 0] διεύθυνση του Καταλόγου Καθυστέρησης Εισαγωγής
0 [ 0] διεύθυνση του καταλόγου κεφαλίδων COR20
0 [ 0] διεύθυνση του δεσμευμένου καταλόγου

ΚΕΦΑΛΙΑ ΕΝΟΤΗΤΑΣ #1
.όνομα κειμένου
Εικονικό μέγεθος C44C1
1000 εικονικές διευθύνσεις
Μέγεθος ακατέργαστων δεδομένων C4600
800 δείκτης αρχείου σε ανεπεξέργαστα δεδομένα

0 αριθμός μετεγκαταστάσεων
0 αριθμός αριθμών γραμμής
60000020 σημαίες
Κώδικας
(δεν έχει καθοριστεί στοίχιση)
Εκτελέστε την ανάγνωση

Κατάλογοι εντοπισμού σφαλμάτων (2)
Πληκτρολογήστε Μέγεθος δείκτη διεύθυνσης
cv 25 c549c c4c9c Μορφή: RSDS, οδηγός, 2, kernel32.pdb
(10) 4 c5498 c4c98

ΚΕΦΑΛΙΑ ΕΝΟΤΗΤΑΣ #2
.όνομα δεδομένων
Εικονικό μέγεθος FEC
Εικονική διεύθυνση C6000
Μέγεθος E00 ακατέργαστων δεδομένων
C4E00 δείκτης αρχείου σε ανεπεξέργαστα δεδομένα
0 δείκτης αρχείου στον πίνακα μετεγκατάστασης
0 δείκτης αρχείου προς αριθμούς γραμμής
0 αριθμός μετεγκαταστάσεων
0 αριθμός αριθμών γραμμής
C0000040 σημαίες
αρχικοποιημένα δεδομένα
(δεν έχει καθοριστεί στοίχιση)
Διαβάζω γράφω

ΚΕΦΑΛΙΑ ΕΝΟΤΗΤΑΣ #3
.rsrc όνομα
Εικονικό μέγεθος 520
C7000 εικονική διεύθυνση
Μέγεθος 600 ακατέργαστων δεδομένων
C5C00 δείκτης αρχείου σε ανεπεξέργαστα δεδομένα
0 δείκτης αρχείου στον πίνακα μετεγκατάστασης
0 δείκτης αρχείου προς αριθμούς γραμμής
0 αριθμός μετεγκαταστάσεων
0 αριθμός αριθμών γραμμής
40000040 σημαίες
αρχικοποιημένα δεδομένα
(δεν έχει καθοριστεί στοίχιση)
Μόνο για ανάγνωση

ΚΕΦΑΛΙΑ ΕΝΟΤΗΤΑΣ #4
.relocname
Εικονικό μέγεθος B098
Εικονική διεύθυνση C8000
Μέγεθος ακατέργαστων δεδομένων B200
C6200 δείκτης αρχείου σε ανεπεξέργαστα δεδομένα
0 δείκτης αρχείου στον πίνακα μετεγκατάστασης
0 δείκτης αρχείου προς αριθμούς γραμμής
0 αριθμός μετεγκαταστάσεων
0 αριθμός αριθμών γραμμής
42000040 σημαίες
αρχικοποιημένα δεδομένα
Απορρίπτεται
(δεν έχει καθοριστεί στοίχιση)
Μόνο για ανάγνωση

Μηνύματα και εξαιρέσεις

Μετά την επισύναψη σε μια διαδικασία, εμφανίζεται πρώτα μια λίστα λειτουργικών μονάδων και, στη συνέχεια, ενδέχεται να εμφανιστούν άλλα μηνύματα. Για παράδειγμα, όταν συνδέουμε το calc.exe, το WinDBG ορίζει αυτόματα ένα σημείο διακοπής (το οποίο είναι απλώς ένας δείκτης που χρησιμοποιείται για τη διακοπή της εφαρμογής). Οι πληροφορίες για το σημείο διακοπής εμφανίζονται στην οθόνη:

(da8.b44): Εξαίρεση εντολής διαλείμματος - κωδικός 80000003 (πρώτη ευκαιρία)

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

Μητρώα

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

Μετά τη σύνδεση στο calc.exe, το WinDBG εμφανίζει αυτόματα πληροφορίες σχετικά με τα ακόλουθα μητρώα:

eax=7ffd9000 ebx=00000000 ecx=00000000 edx=776cd23d esi=00000000 edi=00000000
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000246

Αργότερα, μπορείτε να αντιγράψετε ξανά αυτές τις πληροφορίες χρησιμοποιώντας την εντολή r:

0:005>r
eax=7ffd9000 ebx=00000000 ecx=00000000 edx=776cd23d esi=00000000 edi=00000000
eip=77663540 esp=02affd9c ebp=02affdc8 iopl=0 nv up ei pl zr na pe nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000246
ntdll!DbgBreakPoint:
77663540 cc int 3

Εάν θέλουμε να πάρουμε την τιμή ενός συγκεκριμένου μητρώου, μπορούμε να εκτελέσουμε την ακόλουθη εντολή:

0:005> r eax
eax=7ffd9000

Πληροφορίες μπορούν να ληφθούν ταυτόχρονα από διάφορα μητρώα ως εξής:

0:005> r eax,ebp
eax=7ffd9000 ebp=02affdc8

Δείκτης στην οδηγία

Η τελευταία εντολή αφορά οδηγίες εκτέλεσης. Εδώ, εμφανίζονται επίσης πληροφορίες, όπως στην περίπτωση της εντολής r, για το τι περιέχει τον καταχωρητή EIP. Το EIP είναι ένας καταχωρητής που περιέχει τη θέση της επόμενης εντολής που θα εκτελεστεί από τον επεξεργαστή. Αυτό που εμφανίζει το WinDBG είναι το ισοδύναμο της εντολής u eip L1, μετά την εκτέλεση της οποίας το WinDBG πηγαίνει στη διεύθυνση που καθορίζεται στον καταχωρητή EIP, μετατρέπει αυτήν την ενότητα σε κωδικό συναρμολόγησης και την εμφανίζει στην οθόνη.

ntdll!DbgBreakPoint:
77663540 cc int 3

να κρατήσουμε επαφή

Στα επόμενα άρθρα, θα εξετάσουμε πώς να χρησιμοποιήσετε το WinDBG στη μάχη: σημεία διακοπής, βηματικός εντοπισμός σφαλμάτων και προβολή μνήμης. Μην αλλάζετε! J.

22 Ιουνίου 2010

Παλαιότερα το Windbg ήταν διαθέσιμο ξεχωριστά για λήψη. Αλλά για τις πιο πρόσφατες εκδόσεις, η Microsoft το διατηρεί ως μέρος του SDK των Windows. Βρείτε τους παρακάτω συνδέσμους λήψης.

Windows 10

Μπορείτε να κατεβάσετε την τελευταία έκδοση του Windbg για Windows 7 από τον σύνδεσμο https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk

Windows 7

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

Το παραπάνω πακέτο εγκαθιστά την έκδοση windbg 6.12. Εάν θέλετε να εγκαταστήσετε γρήγορα το windbg, μπορείτε να χρησιμοποιήσετε την παλαιότερη έκδοση (6.11) την οποία μπορείτε να κατεβάσετε από
ο σύνδεσμος που δίνεται στο τέλος αυτής της ανάρτησης.

Μόλις κάνετε την εγκατάσταση, μπορείτε να βρείτε το πρόγραμμα στο μενού Έναρξη -> Όλα τα προγράμματα -> Εργαλεία εντοπισμού σφαλμάτων για Windows -> Windbg

Εργαλεία εντοπισμού σφαλμάτων για Windows- Εργαλεία για τον εντοπισμό σφαλμάτων του κώδικα των λειτουργικών συστημάτων Windows. Είναι ένα σύνολο ελεύθερα διανεμημένων προγραμμάτων από τη Microsoft που έχουν σχεδιαστεί για τον εντοπισμό σφαλμάτων σε λειτουργία χρήστη και κώδικα λειτουργίας πυρήνα: εφαρμογές, προγράμματα οδήγησης, υπηρεσίες, λειτουργικές μονάδες πυρήνα. Η εργαλειοθήκη περιλαμβάνει προγράμματα εντοπισμού σφαλμάτων κονσόλας και GUI, βοηθητικά προγράμματα για εργασία με σύμβολα, αρχεία, διαδικασίες, βοηθητικά προγράμματα για απομακρυσμένο εντοπισμό σφαλμάτων. Η εργαλειοθήκη περιέχει βοηθητικά προγράμματα με τα οποία μπορείτε να βρείτε τις αιτίες των αστοχιών σε διάφορα στοιχεία του συστήματος. Εργαλεία εντοπισμού σφαλμάτων για Windowsαπό μια συγκεκριμένη στιγμή δεν είναι διαθέσιμα για λήψη με τη μορφή αυτόνομης διανομής και αποτελούν μέρος του Windows SDK (Windows Software Development Kit). Το Windows SDK, με τη σειρά του, είναι διαθέσιμο ως μέρος του Συνδρομητικού Προγράμματος MSDN ή μπορεί να ληφθεί ελεύθερα ως ξεχωριστή διανομή από το msdn.microsoft.com. Σύμφωνα με τους προγραμματιστές, η πιο πρόσφατη και πιο ενημερωμένη έκδοση των Εργαλείων εντοπισμού σφαλμάτων για Windows περιέχεται στο SDK των Windows.

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

Ας δούμε τώρα τι μας επιτρέπουν να κάνουμε, συγκεκριμένα, τα Εργαλεία εντοπισμού σφαλμάτων για Microsoft Windows:

  • Εντοπισμός σφαλμάτων σε τοπικές εφαρμογές, υπηρεσίες (υπηρεσίες), προγράμματα οδήγησης και πυρήνα.
  • Εντοπισμός σφαλμάτων απομακρυσμένων εφαρμογών, υπηρεσιών (υπηρεσιών), προγραμμάτων οδήγησης και του πυρήνα μέσω του δικτύου.
  • Αποσφαλμάτωση εφαρμογών που εκτελούνται σε πραγματικό χρόνο.
  • Αναλύστε αρχεία ένδειξης σφαλμάτων μνήμης των εφαρμογών, του πυρήνα και του συστήματος στο σύνολό του.
  • Εργαστείτε με συστήματα που βασίζονται σε αρχιτεκτονικές x86/x64/Itanium.
  • Εντοπισμός σφαλμάτων σε προγράμματα λειτουργίας χρήστη και πυρήνα.

Διατίθενται οι ακόλουθες εκδόσεις των Εργαλείων εντοπισμού σφαλμάτων για Windows: 32-bit x86, Intel Itanium, 64-bit x64. Χρειαζόμαστε δύο από αυτά: x86 ή x64.

Υπάρχουν διάφοροι τρόποι εγκατάστασης των Εργαλείων εντοπισμού σφαλμάτων για Windows, σε αυτό το άρθρο θα εξετάσουμε μόνο τους κύριους:

  • Εγκατάσταση μέσω web installer.
  • Εγκατάσταση εργαλείων εντοπισμού σφαλμάτων για Windows από το Windows SDK ISO.
  • Εγκατάσταση εργαλείων εντοπισμού σφαλμάτων για Windows απευθείας από τα πακέτα dbg_amd64.msi /dbg_x86.msi.

Παραμένει ασαφές σε ποιο σημείο, γιατί πρέπει να εγκαταστήσω εργαλεία εντοπισμού σφαλμάτων σε έναν υπολογιστή; Συχνά, άλλωστε, συναντάς μια κατάσταση όπου η παρέμβαση στο εργασιακό περιβάλλον είναι εξαιρετικά ανεπιθύμητη! Και ακόμη περισσότερο, καθώς η εγκατάσταση ενός νέου προϊόντος, δηλαδή η πραγματοποίηση αλλαγών στο μητρώο / αρχεία συστήματος, μπορεί να είναι εντελώς απαράδεκτη. Παραδείγματα είναι οι κρίσιμοι διακομιστές. Γιατί οι προγραμματιστές δεν εξετάζουν τις φορητές εκδόσεις εφαρμογών που δεν απαιτούν εγκατάσταση;
Από έκδοση σε έκδοση, η διαδικασία εγκατάστασης του πακέτου Εργαλείων εντοπισμού σφαλμάτων για Windows υφίσταται κάποιες αλλαγές. Ας μεταβούμε τώρα κατευθείαν στη διαδικασία εγκατάστασης και ας δούμε τους τρόπους με τους οποίους μπορεί να εγκατασταθεί η εργαλειοθήκη.

Εγκατάσταση εργαλείων εντοπισμού σφαλμάτων για Windows με χρήση του προγράμματος εγκατάστασης Web

Μεταβείτε στη σελίδα Αρχείο Windows SDK και βρείτε μια ενότητα που ονομάζεται Windows 10 και κάτω από το στοιχείο "Windows 10 SDK (10586) και Microsoft Windows 10 Mobile Device Emulator (έκδοση 10586.11)".

Κάντε κλικ σε ένα στοιχείο ΕΓΚΑΤΑΣΤΑΣΗ SDK. Αφού κάνετε κλικ, κατεβάστε και εκτελέστε το αρχείο sdksetup.exe, το οποίο ξεκινά τη διαδικασία ηλεκτρονικής εγκατάστασης του SDK των Windows. Στο αρχικό στάδιο, το πρόγραμμα εγκατάστασης θα ελέγξει εάν η πιο πρόσφατη έκδοση του πακέτου .NET Framework είναι εγκατεστημένη στο σύστημα (επί του παρόντος είναι 4.5). Εάν το πακέτο λείπει, η εγκατάσταση θα προσφερθεί και ο σταθμός θα επανεκκινηθεί όταν ολοκληρωθεί. Αμέσως μετά την επανεκκίνηση, στο στάδιο της εξουσιοδότησης χρήστη, η διαδικασία εγκατάστασης ξεκινά απευθείας με το Windows SDK.

Συχνά, κατά την επιλογή όλων των στοιχείων του πακέτου χωρίς εξαίρεση, ενδέχεται να προκύψουν σφάλματα κατά τη διαδικασία εγκατάστασης. Σε αυτή την περίπτωση, συνιστάται η επιλεκτική εγκατάσταση εξαρτημάτων, το ελάχιστο απαιτούμενο σύνολο.

Αφού ολοκληρωθεί η εγκατάσταση των Εργαλείων εντοπισμού σφαλμάτων για Windows, η θέση των αρχείων εντοπισμού σφαλμάτων με αυτήν τη μέθοδο εγκατάστασης θα είναι η εξής:

  • Εκδόσεις 64-bit: C:\Program Files (x86)\Windows Kits\x.x\Debuggers\x64
  • Εκδόσεις 32 bit: C:\Program Files (x86)\Windows Kits\x.x\Debuggers\x86

* όπου το x.x είναι μια συγκεκριμένη έκδοση του κιτ ανάπτυξης.
Έχετε παρατηρήσει ότι στις εκδόσεις 8 και νεότερες, οι διαδρομές εγκατάστασης διαφέρουν αισθητά από τις κλασικές για όλες τις προηγούμενες εκδόσεις εργαλείων εντοπισμού σφαλμάτων;

Ένα τεράστιο πλεονέκτημα αυτής της μεθόδου εγκατάστασης Debigging Tools για Windows είναι η εγκατάσταση εκδόσεων εργαλείων εντοπισμού σφαλμάτων για όλες τις αρχιτεκτονικές ταυτόχρονα.

Εγκατάσταση εργαλείων εντοπισμού σφαλμάτων για Windows από το Windows SDK ISO

Αυτή η μέθοδος περιλαμβάνει την εγκατάσταση των Εργαλείων εντοπισμού σφαλμάτων για Windows χρησιμοποιώντας την πλήρη εικόνα εγκατάστασης του Windows SDK (Software Developers Kit). Μέχρι ένα ορισμένο χρονικό διάστημα, θα μπορούσατε να κάνετε λήψη της εικόνας ISO για το αντίστοιχο σύστημα στη σελίδα Αρχείο SDK των Windows. Ωστόσο, αυτή τη στιγμή, μπορείτε να λάβετε μια εικόνα ISO του SDK εκτελώντας το πρόγραμμα εγκατάστασης web sdksetup.exe και επιλέγοντας το στοιχείο Κατεβάστε το κιτ ανάπτυξης λογισμικού των Windowsστο παράθυρο έναρξης του προγράμματος εγκατάστασης:

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

Αντίστοιχα, στη σελίδα πρέπει να επιλέξετε το απαιτούμενο κιτ διανομής, για μένα (και νομίζω για πολλούς) αυτή τη στιγμή είναι "Windows SDK για Windows 7 και .NET Framework 4" και ακριβώς από κάτω κάντε κλικ στον σύνδεσμο "Λήψη DVD εικόνα ISO".

Όταν εργάζεστε με τον ιστότοπο msdn.microsoft.com, σας συμβουλεύω να χρησιμοποιείτε το πρόγραμμα περιήγησης Internet Explorer, καθώς έχουν παρατηρηθεί περιπτώσεις αλειτουργίας ανταγωνιστικών προϊόντων!

Κατά συνέπεια, είναι απαραίτητο να επιλέξετε μόνο όπως είναι απαραίτητο. Συνήθως το bit των εργαλείων εντοπισμού σφαλμάτων για Windows είναι το ίδιο με το bit του συστήματος. Τα δοκιμαστικά μου συστήματα είναι ως επί το πλείστον 64 bit, επομένως στις περισσότερες περιπτώσεις κατεβάζω την εικόνα για το σύστημα 64 bit GRMSDKX_EN_DVD.iso .
Στη συνέχεια, μετά τη λήψη της εικόνας, πρέπει να εργαστούμε με κάποιο τρόπο με την υπάρχουσα εικόνα ISO. Ο παραδοσιακός τρόπος είναι, φυσικά, η εγγραφή ενός CD, αλλά αυτή είναι μια μάλλον μακρά και μερικές φορές δαπανηρή μέθοδος. Προτείνω τη χρήση δωρεάν βοηθητικών προγραμμάτων για τη δημιουργία συσκευών εικονικού δίσκου στο σύστημα. Προσωπικά, προτιμώ να χρησιμοποιώ το πρόγραμμα DEAMON Tools Lite για αυτό το σκοπό. Κάποιος μπορεί να έχει άλλες προτιμήσεις, πιο άμεσα ή ελαφριά βοηθητικά προγράμματα, γεύση και χρώμα, όπως λένε .. Μετά την εγκατάσταση του DAEMON Tools Lite, απλώς κάνω διπλό κλικ στο αρχείο εικόνας GRMSDKX_EN_DVD.iso και έχω ένα νέο εικονικό CD:

Στη συνέχεια, κάνοντας διπλό κλικ, ενεργοποιώ την αυτόματη φόρτωση και ξεκινώ την εγκατάσταση του SDK των Windows:

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


Σωστά, το στιγμιότυπο οθόνης δείχνει δύο επιλογές: "Windows Performance Toolkit" και "Debugging Tools for Windows". Επιλέξτε και τα δύο, γιατί το Windows Performance Toolkit σίγουρα θα σας φανεί χρήσιμο στη δουλειά σας! Περαιτέρω, αφού κάνετε κλικ στο κουμπί "Επόμενο", η εγκατάσταση συνεχίζεται στην κανονική λειτουργία. Και στο τέλος θα δείτε την επιγραφή "Ολοκληρώθηκε η εγκατάσταση".
Μετά την ολοκλήρωση της εγκατάστασης, οι κατάλογοι εργασίας του κιτ Εργαλείων εντοπισμού σφαλμάτων για Windows θα είναι οι εξής:

  • Για την έκδοση x86:
  • Για την έκδοση x64:

Αυτό ολοκληρώνει την εγκατάσταση των Εργαλείων εντοπισμού σφαλμάτων για Windows.

Εγκατάσταση εργαλείων εντοπισμού σφαλμάτων για Windows μέσω αρχείου .msi

Σε περίπτωση προβλημάτων κατά την εγκατάσταση των Εργαλείων εντοπισμού σφαλμάτων για Windows με τους δύο προηγούμενους τρόπους, έχουμε ακόμα έναν, τον πιο αξιόπιστο και δοκιμασμένο στο χρόνο, που βοήθησε, ας πούμε, περισσότερες από μία φορές. Κάποτε, πριν από την ενσωμάτωση στο SDK των Windows, τα Εργαλεία εντοπισμού σφαλμάτων για Windows ήταν διαθέσιμα ως ξεχωριστό πρόγραμμα εγκατάστασης .msi, το οποίο εξακολουθεί να βρίσκεται, αλλά ήδη στα έγκατα της διανομής SDK των Windows. Εφόσον διαθέτουμε ήδη μια εικόνα ISO του SDK των Windows, δεν μπορούμε να την προσαρτήσουμε στο σύστημα, αλλά απλώς να την ανοίξουμε χρησιμοποιώντας το γνωστό αρχειοθέτημα WinRAR ή οποιοδήποτε άλλο προϊόν που λειτουργεί με τα περιεχόμενα των δίσκων ISO.

Αφού ανοίξουμε την εικόνα, πρέπει να πάμε στον κατάλογο "Setup" που βρίσκεται στη ρίζα και στη συνέχεια να επιλέξουμε έναν από τους καταλόγους:

  • Για να εγκαταστήσετε την έκδοση 64-bit: \Setup\WinSDKDebuggingTools_amd64και αποσυσκευάστε το αρχείο dbg_amd64.msi από αυτόν τον κατάλογο.
  • Για να εγκαταστήσετε την έκδοση 32-bit: \Setup\WinSDKDebuggingTools και αποσυσκευάστε το αρχείο dbg_x86.msi από αυτόν τον κατάλογο.

Μετά την ολοκλήρωση της εγκατάστασης, οι κατάλογοι εργασίας του κιτ Εργαλείων εντοπισμού σφαλμάτων για Windows θα είναι οι εξής:

  • Για την έκδοση x86: C:\Program Files (x86)\Debugging Tools for Windows (x86)
  • Για την έκδοση x64: C:\Program Files\Debugging Tools for Windows (x64)

Σε αυτό το σημείο, η εγκατάσταση των Εργαλείων εντοπισμού σφαλμάτων για Windows μπορεί να θεωρηθεί ολοκληρωμένη.

Επιπλέον πληροφορίες

Δεν ξέρω με τι συνδέεται, ίσως με την απροσεξία μου, αλλά μετά την εγκατάσταση των Εργαλείων εντοπισμού σφαλμάτων για Windows, το πρόγραμμα εγκατάστασης δεν ορίζει τη διαδρομή προς τον κατάλογο με τον εντοπισμό σφαλμάτων στη μεταβλητή διαδρομή συστήματος Διαδρομή. Αυτό επιβάλλει ορισμένους περιορισμούς στην εκτέλεση διαφόρων εργασιών εντοπισμού σφαλμάτων απευθείας από την κονσόλα. Επομένως, ελλείψει μονοπατιού, ο ίδιος γράφω στο παράθυρο Μεταβλητές Περιβάλλοντοςδιαδρομή προς τα εργαλεία εντοπισμού σφαλμάτων:

  • C:\Program Files (x86)\Windows Kits\10\Debuggers\x86
  • C:\Program Files (x86)\Windows Kits\10\Debuggers\x64

* Στην περίπτωσή σας, οι διαδρομές ενδέχεται να διαφέρουν τόσο λόγω της χρήσης ενός λειτουργικού συστήματος διαφορετικού bit όσο και λόγω της χρήσης ενός SDK διαφορετικής έκδοσης.

Τα βοηθητικά προγράμματα του πακέτου Εργαλεία εντοπισμού σφαλμάτων για Windows μπορούν να λειτουργήσουν ως φορητές εφαρμογές, απλά πρέπει να αντιγράψετε τον κατάλογο από το σύστημα εργασίας Microsoft Windows Performance Toolkitκαι χρησιμοποιήστε το ως φορητή έκδοση σε διακομιστή παραγωγής. Αλλά μην ξεχάσετε να λάβετε υπόψη τη χωρητικότητα του συστήματος !! Ακόμα κι αν έχετε κάνει μια πλήρη εγκατάσταση του πακέτου σε ένα κρίσιμο σύστημα, τότε μπορείτε να ξεκινήσετε να εργάζεστε αμέσως μετά την εγκατάσταση, δεν απαιτείται επανεκκίνηση.

Εργαλεία εντοπισμού σφαλμάτων για Windows

Και τώρα, τέλος, εδώ είναι η σύνθεση των Εργαλείων εντοπισμού σφαλμάτων για Windows:

Αρχείο Σκοπός
adplus.doc Τεκμηρίωση για το βοηθητικό πρόγραμμα ADPlus.
adplus.exe Μια εφαρμογή κονσόλας που αυτοματοποιεί την εργασία του προγράμματος εντοπισμού σφαλμάτων cdb για τη δημιουργία ενδείξεων, αρχείων καταγραφής για μία ή περισσότερες διεργασίες.
agestore.exe Ένα βοηθητικό πρόγραμμα για την κατάργηση απαρχαιωμένων αρχείων από την αποθήκευση που χρησιμοποιείται από τον διακομιστή συμβόλων ή τον διακομιστή πηγής.
breakin.exe Ένα βοηθητικό πρόγραμμα που σας επιτρέπει να στείλετε έναν προσαρμοσμένο συνδυασμό διακοπής στις διεργασίες, παρόμοιο με το πάτημα CTRL+C.
cdb.exe Εντοπιστής σφαλμάτων κονσόλας λειτουργίας χρήστη.
convertstore.exe Βοηθητικό πρόγραμμα μετατροπής χαρακτήρων από 2 σε 3 επίπεδα.
dbengprx.exe Ripiter (διακομιστής μεσολάβησης) για απομακρυσμένο εντοπισμό σφαλμάτων.
dbgpc.exe Ένα βοηθητικό πρόγραμμα για την εμφάνιση πληροφοριών σχετικά με την κατάσταση μιας κλήσης RPC.
dbgsrv.exe Η διαδικασία διακομιστή που χρησιμοποιείται για απομακρυσμένο εντοπισμό σφαλμάτων.
dbh.exe Ένα βοηθητικό πρόγραμμα για την εμφάνιση πληροφοριών σχετικά με τα περιεχόμενα ενός αρχείου συμβόλων.
dumpchk.exe Βοηθητικό πρόγραμμα επαλήθευσης απόρριψης. Ένα βοηθητικό πρόγραμμα για τον γρήγορο έλεγχο ενός αρχείου ένδειξης σφαλμάτων.
dumpexam.exe Ένα βοηθητικό πρόγραμμα για την ανάλυση μιας ένδειξης αποθήκευσης μνήμης. Το αποτέλεσμα εξάγεται στο %SystemRoot%\MEMORY.TXT .
gflags.exe Συντάκτης σημαιών παγκόσμιου συστήματος. Το βοηθητικό πρόγραμμα διαχειρίζεται τα κλειδιά μητρώου και άλλες ρυθμίσεις.
i386kd.exe Περιτύλιγμα για kd. Αυτό ονομαζόταν κάποτε το kd για συστήματα που βασίζονται στα Windows NT/2000 για μηχανές x86; Μάλλον έφυγε για λόγους συμβατότητας.
ia64kd.exe Περιτύλιγμα για kd. Ήταν αυτό που ονομαζόταν κάποτε το kd για συστήματα βασισμένα στα Windows NT/2000 για μηχανήματα ia64; Μάλλον έφυγε για λόγους συμβατότητας.
kd.exe Εντοπιστής σφαλμάτων κονσόλας σε λειτουργία πυρήνα.
kdbgctrl.exe Εργαλείο διαχείρισης εντοπισμού σφαλμάτων πυρήνα. Βοηθητικό πρόγραμμα για τη διαχείριση και τη διαμόρφωση της σύνδεσης εντοπισμού σφαλμάτων πυρήνα.
kdsrv.exe Διακομιστής σύνδεσης για KD. Το βοηθητικό πρόγραμμα είναι μια μικρή εφαρμογή που εκτελείται και περιμένει για απομακρυσμένες συνδέσεις. Το kd εκτελείται σε έναν πελάτη και συνδέεται με αυτόν τον διακομιστή για απομακρυσμένο εντοπισμό σφαλμάτων. Τόσο ο διακομιστής όσο και ο πελάτης πρέπει να προέρχονται από το ίδιο συγκρότημα εργαλείων εντοπισμού σφαλμάτων.
kill.exe Βοηθητικό πρόγραμμα τερματισμού διαδικασιών.
list.exe Ένα βοηθητικό πρόγραμμα για την εμφάνιση των περιεχομένων ενός αρχείου στην οθόνη. Αυτό το μικροσκοπικό βοηθητικό πρόγραμμα συνδυάστηκε με έναν σκοπό - την προβολή μεγάλων αρχείων κειμένου ή αρχείων καταγραφής. Καταλαμβάνει λίγο χώρο στη μνήμη, καθώς φορτώνει το κείμενο σε μέρη.
logger.exe Ένα μικροσκοπικό πρόγραμμα εντοπισμού σφαλμάτων που μπορεί να λειτουργήσει μόνο με μία διαδικασία. Το βοηθητικό πρόγραμμα εισάγει το logexts.dll στον χώρο διεργασίας, ο οποίος καταγράφει όλες τις κλήσεις συναρτήσεων και άλλες ενέργειες του προγράμματος που εξετάζεται.
logviewer.exe Ένα βοηθητικό πρόγραμμα για την προβολή αρχείων καταγραφής που έχουν γραφτεί από το πρόγραμμα εντοπισμού σφαλμάτων logger.exe.
ntsd.exe Microsoft NT Symbolic Debugger (NTSD). Ένα πρόγραμμα εντοπισμού σφαλμάτων που είναι πανομοιότυπο με το cdb, εκτός από το ότι δημιουργεί ένα παράθυρο κειμένου κατά την εκκίνηση. Όπως το cdb, το ntsd είναι ικανό να διορθώνει τόσο τις εφαρμογές της κονσόλας όσο και τις εφαρμογές γραφικών.
pdbcopy.exe Ένα βοηθητικό πρόγραμμα για την αφαίρεση ιδιωτικών συμβόλων από ένα αρχείο συμβόλων, τον έλεγχο των δημόσιων συμβόλων που περιλαμβάνονται σε ένα αρχείο συμβόλων.
remote.exe Βοηθητικό πρόγραμμα για απομακρυσμένο εντοπισμό σφαλμάτων και απομακρυσμένο έλεγχο οποιουδήποτε προγράμματος εντοπισμού σφαλμάτων κονσόλας KD, CDB και NTSD. Σας επιτρέπει να εκτελείτε όλα αυτά τα προγράμματα εντοπισμού σφαλμάτων κονσόλας από απόσταση.
rtlist.exe Απομακρυσμένη προβολή εργασιών. Το βοηθητικό πρόγραμμα χρησιμοποιείται για τη λίστα διεργασιών που εκτελούνται μέσω της διαδικασίας διακομιστή DbgSrv.
symchk.exe Ένα βοηθητικό πρόγραμμα για τη λήψη συμβόλων από τον διακομιστή συμβόλων της Microsoft και τη δημιουργία μιας τοπικής προσωρινής μνήμης συμβόλων.
symstore.exe Βοηθητικό πρόγραμμα δημιουργίας δικτύου ή τοπικής αποθήκευσης συμβόλων (2-tier/3-tier). Ο χώρος αποθήκευσης συμβόλων είναι ένας εξειδικευμένος κατάλογος στο δίσκο που είναι κατασκευασμένος σύμφωνα με μια συγκεκριμένη δομή και περιέχει σύμβολα. Στον ριζικό κατάλογο των συμβόλων, δημιουργείται μια δομή υποφακέλου με ονόματα πανομοιότυπα με τα ονόματα των στοιχείων. Με τη σειρά του, καθένας από αυτούς τους υποφακέλους περιέχει ένθετους υποφακέλους με ειδικά ονόματα που λαμβάνονται με κατακερματισμό δυαδικών αρχείων. Το βοηθητικό πρόγραμμα symstore σαρώνει φακέλους στοιχείων και προσθέτει νέα στοιχεία στο χώρο αποθήκευσης συμβόλων όπου οποιοσδήποτε πελάτης μπορεί να τα ανακτήσει. Το symstore λέγεται ότι χρησιμοποιείται για τη λήψη συμβόλων από τον χώρο αποθήκευσης 0 επιπέδων και την τοποθέτηση τους στον χώρο αποθήκευσης 2 επιπέδων/3 επιπέδων.
tlist.exe Προβολή εργασιών. Ένα βοηθητικό πρόγραμμα για την καταχώριση όλων των διεργασιών που εκτελούνται.
umdh.exe Βοηθητικό πρόγραμμα σωρού απόρριψης λειτουργίας χρήστη. Ένα βοηθητικό πρόγραμμα για την ανάλυση σωρών μιας επιλεγμένης διαδικασίας. Σας επιτρέπει να εμφανίζετε διάφορες επιλογές για το σωρό.
usbview.exe Προβολή USB. Βοηθητικό πρόγραμμα για την προβολή συσκευών USB που είναι συνδεδεμένες στον υπολογιστή.
vmdemux.exe Αποπολυπλέκτης εικονικής μηχανής. Δημιουργεί πολλαπλούς αγωγούς με όνομα για μία μόνο σύνδεση COM. Τα κανάλια χρησιμοποιούνται για τον εντοπισμό σφαλμάτων σε διάφορα στοιχεία της εικονικής μηχανής
windbg.exe Λειτουργία χρήστη και εντοπισμός σφαλμάτων πυρήνα με GUI.
Συνεχίζοντας το θέμα:
Android

Τα γραφικά στοιχεία στην επιφάνεια εργασίας των Windows 7 ή 10 παρέχουν στους χρήστες έναν τεράστιο αριθμό επιλογών, επιτρέποντάς σας να προσαρμόσετε ορθολογικά τον χώρο εργασίας σας. Βασικά, το σύστημα...

Νέα άρθρα
/
Δημοφιλής