Executable and Linkable Format

Executable and Linkable Format
Filename extension
none, .axf, .bin, .elf, .o, .out, .prx, .puff, .ko, .mod, and .so
Magic number0x7F 'E' 'L' 'F'
Developed byUnix System Laboratories[1]: 3 
Type of formatBinary, executable, object, shared library, core dump
Container forMany executable binary formats
An ELF file has two views: the program header shows the segments used at run time, whereas the section header lists the set of sections.

In computing, the Executable and Linkable Format[2] (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),[3] and later in the Tool Interface Standard,[1] 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, the ELF format is flexible, extensible, and cross-platform. For instance, it supports different endiannesses and address sizes so it does not exclude any particular CPU or instruction set architecture. This has allowed it to be adopted by many different operating systems on many different hardware platforms.

  1. ^ a b Tool Interface Standard (TIS) Executable and Linking Format (ELF) Specification Version 1.2 (May 1995)
  2. ^ Tool Interface Standard (TIS) Portable Formats Specification Version 1.1 (October 1993)
  3. ^ System V Application Binary Interface Edition 4.1 (1997-03-18)

Developed by StudentB