O que é uma tabela de relocação?
Uma tabela de relocação é metadado em um arquivo-objeto ou executável que registra cada ponto que se refere a um endereço ainda não final. O linker ou o loader a usa para corrigir essas referências assim que decide onde as seções ficarão na memória. Cada entrada nomeia o local a ser corrigido e como calcular o valor corrigido.
Por que isso importa
As relocações são o que permite que o código seja compilado antes que seu layout final de memória seja conhecido e depois montado em um programa funcional. Elas são centrais para a forma como linkers e loaders produzem binários executáveis.
Guias relacionados
What Is Symbol Resolution?Symbol resolution is the linker step that matches each reference to a name, such as a function or variable, w…
What Is Position-Independent Code (PIC)?Position-independent code runs correctly regardless of the address it is loaded at, by addressing data and ca…
What Is a Dynamic Linker?A dynamic linker loads the shared libraries a program depends on at startup and binds its references to the f…