Freigeben über


Symboldateisysteme

Es gibt zwei gängige Symboldateisysteme. In diesem Dokument werden diese als das aktuelle System und das alte System bezeichnet.

Aktuelles Symboldateisystem

Im aktuellen System gibt es immer zwei Dateien: die ausführbare Datei und eine PDB-Datei. Die PDB-Datei enthält alle Symbole. Die ausführbare Datei enthält einen Zeiger auf die PDB-Datei.

Wenn eine PDB-Symboldatei private Symbole enthält, kann BinPlace diese Informationen entfernen und eine bereinigte Symboldatei erstellen. Weitere Angaben finden Sie unter Öffentliche und private Symbole.

Altes Symboldateisystem

Im alten System können ausführbare Dateien und Symboldateien auf zwei verschiedene Arten angeordnet werden:

  • Die ausführbare Datei und eine PDB-Datei. In dieser Anordnung befinden sich die meisten Symbolinformationen in der PDB-Datei. Der Rest der Symbolinformationen ist in der ausführbaren Datei enthalten. Die ausführbare Datei enthält außerdem einen Zeiger auf die PDB-Datei.

  • Die ausführbare Datei, eine PDB-Datei und eine DBG-Datei. Die PDB-Datei ist identisch mit der Anordnung mit zwei Dateien: Sie enthält die meisten Symbole. Der Rest der Symbolinformationen befindet sich in der DBG-Datei. In der ausführbaren Datei befinden sich keine Symbolinformationen. Die ausführbare Datei enthält einen Zeiger auf die DBG-Datei, und die DBG-Datei enthält einen Zeiger auf die PDB-Datei.

Im alten Symboldateisystem enthalten sowohl die Zwei-Datei-Anordnung als auch die Drei-Datei-Anordnung denselben ausführbaren Code und dieselben Symbole. Das Programm kann ausgeführt werden und kann in beiden Anordnungen gedebuggt werden. Die Anordnung mit drei Dateien beschleunigt jedoch die Ausführung, da die ausführbare Datei kleiner ist.

Wenn Sie Binärdateien haben, die mit dem alten Symboldateisystem in der Zwei-Datei-Anordnung erstellt wurden, kann BinPlace sie in die Drei-Datei-Anordnung konvertieren. Mit anderen Worten, BinPlace kann die ausführbare Datei in eine symbolfreie ausführbare Datei und eine neue DBG-Datei mit den Symbolen in der ausführbaren Datei aufteilen.

BinPlace kann auch private Symbolinformationen aus Dateien im alten Symboldateisystem entfernen, aber nur, wenn es auch die Dateien aufteilt (also nur, wenn die Dateien von der Anordnung aus zwei Dateien in die Anordnung mit drei Dateien geändert werden). BinPlace kann keine privaten Symbole aus Dateien im alten Symboldateisystem entfernen und sie in der Zwei-Datei-Anordnung belassen. Und wenn sich die Dateien bereits in der Drei-Datei-Anordnung befinden, führt BinPlace keine Entfernung aus. Tatsächlich werden die Symboldateien nicht einmal verschoben, wenn die ausführbare Datei in der BinPlace-Befehlszeile benannt ist. Weitere Angaben finden Sie unter Öffentliche und private Symbole.