L'Executable and Linkable Format (ELF) è un formato di file standard comune utilizzato per eseguibili, codice oggetto (object code), librerie condivise (shared libraries) e dump della memoria (core dumps). È ampiamente adottato su numerosi sistemi Unix-like, inclusi Linux, Solaris, FreeBSD e altri. ELF è riconosciuto per essere un formato flessibile ed estensibile, in grado di supportare una vasta gamma di architetture hardware e sistemi operativi. Definisce una struttura precisa per l'archiviazione di codice, dati e metadati, permettendo al sistema operativo di caricare ed eseguire i programmi in modo efficiente. Il formato è suddiviso in sezioni dedicate a diversi tipi di dati, come il codice eseguibile, i dati di sola lettura (read-only data) e i dati scrivibili (writable data). Contiene inoltre una tabella dei simboli (symbol table) fondamentale, che mappa i nomi simbolici agli indirizzi di memoria, essenziale per il funzionamento di debugger e linker. I file ELF sono tipicamente generati da compilatori e linker e sono utilizzati dal sistema operativo per l'avvio e l'esecuzione dei programmi. Il design del formato è intrinsecamente indipendente dalla piattaforma (platform-independent), consentendo ai programmi di essere compilati una sola volta e di funzionare su sistemi diversi con modifiche minime. Rappresenta una componente cruciale del processo di sviluppo software sui sistemi Unix-like.