Partilhar via


Sistemas de arquivos de símbolos

Existem dois sistemas de ficheiros de símbolos comuns. Neste documento, estes serão referidos como o sistema atual e o sistema antigo.

Sistema de arquivos de símbolo atual

No sistema atual, há sempre dois arquivos: o arquivo executável e um arquivo .pdb. O arquivo .pdb contém todos os símbolos. O arquivo executável contém um ponteiro para o arquivo .pdb.

Se um arquivo de símbolo .pdb contiver símbolos privados, BinPlace pode remover essas informações e produzir um arquivo de símbolo removido. Consulte Símbolos públicos e Símbolos privados para obter detalhes.

Sistema de arquivos de símbolos antigos

No sistema antigo, arquivos executáveis e arquivos de símbolo podem ser organizados de duas maneiras diferentes:

  • O arquivo executável e um arquivo .pdb. Nessa disposição, a maioria das informações de símbolo está no arquivo .pdb. O restante das informações do símbolo é incluído no arquivo executável. O arquivo executável também contém um ponteiro para o arquivo .pdb.

  • O arquivo executável, um arquivo .pdb e um arquivo .dbg. O arquivo .pdb é o mesmo que na disposição de dois arquivos: ele contém a maioria dos símbolos. O restante das informações do símbolo está no arquivo .dbg. Nenhuma informação de símbolo está no arquivo executável. O arquivo executável contém um ponteiro para o arquivo .dbg e o arquivo .dbg contém um ponteiro para o arquivo .pdb.

No antigo sistema de arquivos de símbolos, tanto a disposição de dois arquivos quanto a disposição de três arquivos contêm o mesmo código executável e os mesmos símbolos. O programa pode ser executado e pode ser depurado em qualquer configuração. No entanto, o arranjo de três arquivos acelera a execução, porque o arquivo executável é menor.

Se você tiver binários que foram criados com o antigo sistema de arquivos de símbolos na disposição de dois arquivos, BinPlace pode convertê-lo para o arranjo de três arquivos. Em outras palavras, BinPlace pode "dividir" o arquivo executável em um arquivo executável sem símbolos e um novo arquivo .dbg contendo os símbolos que estavam no arquivo executável.

BinPlace também pode remover informações de símbolos privados dos ficheiros no antigo sistema de ficheiros de símbolos, mas apenas se também estiver a dividir os ficheiros (ou seja, apenas se estiver a mudar os ficheiros da disposição de dois ficheiros para a disposição de três ficheiros). BinPlace não pode remover símbolos privados dos arquivos no sistema de arquivos de símbolos antigos e deixá-los na configuração de dois arquivos. E se os arquivos já estiverem no arranjo de três arquivos, o BinPlace não executará nenhuma remoção de símbolos; na verdade, ele nem mesmo moverá o arquivo de símbolos se o arquivo executável for especificado na linha de comando BinPlace. Consulte Símbolos públicos e Símbolos privados para obter detalhes.