Compartir a través de


Sistemas de archivos de símbolos

Hay dos sistemas de archivos de símbolos comunes. En este documento, nos referiremos a ellos como el sistema actual y el sistema antiguo.

Sistema de archivos de símbolos actual

En el sistema actual, siempre hay dos archivos: el archivo ejecutable y un archivo .pdb. El archivo .pdb contiene todos los símbolos. El archivo ejecutable contiene un puntero al archivo .pdb.

Si un archivo de símbolos .pdb contiene símbolos privados, BinPlace puede quitar esta información y producir un archivo de símbolos eliminado. Para obtener más detalles, consulte Símbolos públicos y símbolos privados.

Sistema de archivos de símbolos antiguos

En el sistema antiguo, los archivos ejecutables y los archivos de símbolos se pueden organizar de dos maneras diferentes:

  • El archivo ejecutable y el archivo .pdb. En esta disposición, la mayor parte de la información de los símbolos está en el archivo .pdb. El resto de la información del símbolo se incluye en el archivo ejecutable. El archivo ejecutable también contiene un puntero al archivo .pdb.

  • El archivo ejecutable, un archivo .pdb. y un archivo .dbg El archivo .pdb es el mismo que en la disposición de dos archivos: contiene la mayoría de los símbolos. El resto de la información del símbolo está en el archivo .dbg. No hay información de símbolos en el archivo ejecutable. El archivo ejecutable contiene un puntero al archivo .dbg, y el archivo .dbg contiene un puntero al archivo .pdb.

En el sistema de archivos de símbolos antiguos, tanto la disposición de dos archivos como la de tres archivos contienen el mismo código ejecutable y los mismos símbolos. El programa se puede ejecutar y depurar en cualquier disposición. Sin embargo, la disposición de tres archivos acelera la ejecución, porque el archivo ejecutable es más pequeño.

En el sistema de archivos de símbolos antiguos, tanto la disposición de dos archivos como la de tres archivos contienen el mismo código ejecutable y los mismos símbolos. Dicho de otro modo, BinPlace puede "dividir" el archivo ejecutable en un archivo ejecutable sin símbolos y un nuevo archivo .dbg que contenga los símbolos que estaban en el archivo ejecutable.

BinPlace también puede eliminar información de símbolos privados de los archivos en el sistema de archivos de símbolos antiguos, pero solo si también está dividiendo los archivos (en otras palabras, solo si está cambiando los archivos de la disposición de dos archivos a la disposición de tres archivos). En el sistema de archivos de símbolos antiguos, tanto la disposición de dos archivos como la de tres archivos contienen el mismo código ejecutable y los mismos símbolos. Y si los archivos ya están en la disposición de tres archivos, BinPlace no realizará ninguna eliminación; de hecho, ni siquiera moverá los archivos de símbolos si el archivo ejecutable se nombra en la línea de comando de BinPlace. Para obtener más detalles, consulte Símbolos públicos y símbolos privados.