What Is .elf

Content on WhatAnswers is provided "as is" for informational purposes. While we strive for accuracy, we make no guarantees. Content is AI-assisted and should not be used as professional advice.

Last updated: April 10, 2026

Quick Answer: ELF (Executable and Linkable Format) is the standard binary file format used in Unix and Linux systems for executable files, object code, and shared libraries, developed in 1989 for Unix System V Release 4 (SVR4). It supports over 60 processor architectures and is the universal format for compiled programs, dynamic libraries, and system binaries across modern Linux distributions.

Key Facts

Overview

ELF (Executable and Linkable Format) is the standard binary file format for executable files, object code, shared libraries, and core dumps in Unix and Linux systems. Introduced in 1989 with Unix System V Release 4 (SVR4), ELF became the universal standard replacing earlier formats like a.out and COFF, establishing itself as the foundational format for compiled programs across all modern Unix-like operating systems.

Every Linux executable, shared library (.so), and kernel module uses the ELF format internally. When you run a program on Linux, the operating system kernel reads the ELF file's headers and structure to determine how to load it into memory, allocate resources, and execute it. The format's flexibility supports multiple processor architectures—from Intel x86 to ARM processors to mainframe s390 systems—making it one of the most successful binary formats in computing history with billions of deployed instances.

How It Works

An ELF file begins with a standardized header containing metadata about the binary:

Key Comparisons

File FormatIntroduction YearArchitecture SupportModern Usage
ELF1989 (SVR4)60+ architecturesUniversal standard in Linux, BSD, Unix systems
a.out1970s (early Unix)Limited (primarily x86)Obsolete, replaced by ELF in 1989
COFF1980s (System V)Multiple architecturesLegacy format, replaced by ELF; used in Windows (modified)
Mach-O1985 (NeXTSTEP)x86, ARM, PowerPCStandard in macOS and iOS systems
PE/COFF1993 (Windows NT)x86, x86-64, ARMStandard in Windows executables (.exe, .dll)

Why It Matters

The ELF format remains fundamental to Linux and Unix systems after 35+ years, proving essential for billions of software installations worldwide. From embedded Linux devices to cloud servers running data centers, every compiled program relies on ELF's robust design. Its continued evolution—supporting new architectures, security features, and optimization techniques—ensures ELF will remain the standard executable format for decades to come.

Sources

  1. Wikipedia - Executable and Linkable FormatCC-BY-SA-4.0
  2. Linux Foundation - ELF SpecificationOpen
  3. Linux man-pages - elf(5)GPL

Missing an answer?

Suggest a question and we'll generate an answer for it.