101 in a single image from Wikipedia:
0x10
)The ELF file header consists of two header, ELF header and program header table.
The program header table tells the system how to create a process image (memory layout).
I don’t know why, but it took several hours to understand PLT and GOT…
.plt
): Procedure Linkage Table. One of ELF sections. A .plt
section points to GOT. Caller sections call function by call name_in_pltsection
..got.plt
): Global Offset Table. One of ELF sections. All shared library symbol, which are unknown untill runtime, are stored with the pair of real loaded address.
The addresses of shared library is stored dynamicall when the functions called.