The k project

Elf file

An ELF file is a standard way of describing executable, shared libraries and object, it’s the default executable format in several system such as Linux, *BSD, and more esoteric system like the PS3 OS.

An ELF file is described by its header, Elf32_Ehdr, which is present at the beginning of it. It contain information about segments and sections of the executable.

Sections contains information needed by the linker, while segments contains information needed to create a memory image of the binary. Common section are:

The sections are described by the section header table, Elf32_Shdr, while the segments are described by the program header table, Elf32_Phdr.

Sections et segments

Notes

For more information about the ELF format, look at the elf.h file given and into the elf(5) man page.