O que é uma tabela de símbolos?

Uma tabela de símbolos é usada pelos sistemas de computador como uma maneira de centralizar informações e reduzir o tamanho dos programas. Essas tabelas funcionam como a chave para um código secreto; Um símbolo ou string é colocado ao lado de outro, geralmente muito maior, uma informação. Quando um programa lê um símbolo associado à tabela de símbolos, o programa faz referência à tabela e pega as informações e não o símbolo. Isso permite que grandes informações ou estruturas comumente repetidas tenham apenas uma entrada, reduzindo o tamanho geral do programa.

O conceito por trás de uma tabela de símbolos é muito simples. Uma única tabela contém uma ampla gama de informações usadas por um programa, cada uma com sua própria entrada e símbolo associado exclusivo. Essas informações podem ser seqüências de código, depuração de informações, locais de memória, literalmente qualquer coisa que o programa possa usar para funcionar. Em vez de incluir essas informações dentro do programa, o código simplesmente faz referência à tabela usando seu símbio exclusivool.

Existem dois lugares onde uma tabela de símbolos é comum: na compilação de código em programas e na ligação de bibliotecas usadas por vários programas. Quando usado em programas, a tabela real é normalmente absorvida no programa ou transformada em uma biblioteca compartilhada no momento da compilação. É incomum deixar a lista separada, pois alterar a lista pode ter consequências extremas para o programa. Mesmo quando a tabela é transformada nesse processo, ainda é a mesma coisa básica, ela está apenas incluída junto com outro código.

Quando uma tabela de símbolos é usada em uma biblioteca de vinculação, as possibilidades de como ela pode funcionar expandindo drasticamente. Uma biblioteca de vinculação é um conjunto de informações que se supõe estar disponíveis para um programa a qualquer momento. Essas bibliotecas são frequentemente compartilhadas por um sistema operacional ou por uma família de programas relacionados que são todos feitos pela mesma empresa.

Cada uma dessas bibliotecas é FIcom informações sobre determinados assuntos. Uma biblioteca pode conter uma ampla variedade de programas para desenhar as bordas da janela da interface do usuário do sistema operacional, enquanto outra pode conter informações sobre onde um grupo específico de programas armazenam informações na memória. Como uma biblioteca de vinculação pode conter essa variedade aleatória de informações, as tabelas de símbolos são frequentemente incluídas com elas.

Ao incorporar uma tabela de símbolos em um ligante, é possível compartilhar os símbolos em uma série de programas. Isso permite que vários programas acessem os mesmos dados a qualquer momento. Se um grande número de programas exigir as mesmas informações, inclusive em uma tabela de símbolos em uma biblioteca, reduz bastante o tamanho do grupo total de programas.

OUTRAS LÍNGUAS

Este artigo foi útil? Obrigado pelo feedback Obrigado pelo feedback

Como podemos ajudar? Como podemos ajudar?