*** Welcome to piglix ***

Executable and Linking Format

ELF
Filename extension none, .axf, .bin, .elf, .o, .prx, .puff, .ko, .mod and .so
Magic number 0x7F 'E' 'L' 'F'
Developed by Unix System Laboratories
Type of format Binary, executable, object, shared library, core dump
Container for Many executable binary formats

In computing, the Executable and Linkable Format (ELF, formerly named Extensible Linking Format), is a common standard file format for executable files, object code, shared libraries, and core dumps. First published in the specification for the application binary interface (ABI) of the Unix operating system version named System V Release 4 (SVR4), and later in the Tool Interface Standard, it was quickly accepted among different vendors of Unix systems. In 1999, it was chosen as the standard binary file format for Unix and Unix-like systems on x86 processors by the 86open project.

By design, ELF is flexible, extensible, and cross-platform, not bound to any given central processing unit (CPU) or instruction set architecture. This has allowed it to be adopted by many different operating systems on many different hardware platforms.

Each ELF file is made up of one ELF header, followed by file data. The data can include:

The segments contain information that is needed for run time execution of the file, while sections contain important data for linking and relocation. Any byte in the entire file can be owned by one section at most, and orphan bytes can occur which are unowned by any section.

00000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 |.ELF............|


...
Wikipedia

...