Wenn Sie sich die Core Man -Seite ansehen, definiert sie als Kern -Müllkippe als “Eine Datei mit einem Bild des Speicherspeichers des Prozesses zum Zeitpunkt der Beendigung. Dieses Bild kann in einem Debugger verwendet werden (e.G.) GDB, um den Zustand des Programms zu dem Zeitpunkt zu inspizieren, als es beendet wurde. “.
In einfachen Worten ist eine Kern -Dump -Datei eine Datei, die Speicherinformationen zu einem Prozess enthält, wenn der spezifische Prozess endet.
Es gibt verschiedene Gründe, warum Prozesse abstürzen und eine Kern -Dump -Datei erstellen können. In diesem Tutorial werden Ihnen angezeigt.
Schritt 1: Holen Sie sich einen Kern -Müllkippe
Bevor wir mit der Analyse der Core Dump -Datei beginnen, müssen wir eines generieren. Dazu können wir ein Buggy -Programm verwenden.
Betrachten Sie den Code Buggy.c unten:
#enthaltenIm obigen Code erstellen wir eine für die Schleife zwischen 0 und 10. Wenn der Wert von I 5 ist, verweisen wir auf einen schlechten Zeiger.
Clang -g Bugg.C -o BuggyFühren Sie nun den Code als:
./BuggyDer obige Code gibt die Ausgabe als:
Ich ist 0Schritt 2: Open Core Dump mit GDB öffnen
Verwenden Sie den Befehl GDB mit GDB, um die Core -Dump -Datei mit GDB zu öffnen, und übergeben Sie den Pfad an die ausführbare Datei und den Core -Dump als Parameter als:
$ GDB Buggy CoreDadurch wird GDB gestartet und den Kernmüll enthalten, wie in der folgenden Ausgabe gezeigt:
Verwenden Sie den Befehl Backtrace, um die Stapelverfolgung der Kerndatei anzuzeigen:
(GDB) BacktraceAbschluss
Dieses Tutorial hat Ihnen gezeigt.