Executable and Linkable Format
ELF (Executable and Linking Format) est un format de fichier informatique binaire utilisé pour l'enregistrement de code compilé (objets, exécutables, bibliothèques de fonctions). Il a été développé par l'USL (Unix System Laboratories) pour remplacer les anciens formats a.out et COFF qui avaient atteints leurs limites. Aujourd'hui, ce format est utilisé dans la plupart des systèmes d'exploitation Unix (Linux, Solaris, Irix, System V, BSD), à l'exception de MacOS X.
Le format de fichier ELF
Chaque fichier ELF est constitué d'une en-tête fixe, puis de segments et de sections. Les segments contiennent les informations nécessaires à l'exécution du programme contenu dans le fichier, alors que les sections contiennent les informations pour la résolution des liens entre fonctions et le replacement des données. Sur la plupart des systèmes Unix, la commande :
man elf
donnera de plus amples informations.