Executable and Linkable Format
Struttura di un file ELF
Estensione.bin, .elf, .o, .out, .so
Magic number0x7F 'E' 'L' 'F'
SviluppatoreUNIX System Laboratories

L'Executable and Linkable Format[1] (ELF, lett. "formato eseguibile e collegabile", precedentemente noto come Extensible Linking Format) è un formato di file standard per eseguibili, librerie condivise e dump.

Pubblicato inizialmente nelle specifiche application binary interface di System V e poi in Tool Interface Standard, è stato quindi accettato da diversi produttori di sistemi Unix. Nel 1999 è stato scelto come formato standard dei file binari per i sistemi Unix e Unix-like su architettura x86 dal progetto 86open.

Storia

modifica

Il formato ELF ha rimpiazzato formati eseguibili come a.out e COFF in Linux, Solaris, IRIX e BSD, con l'eccezione di macOS che usa Mach-O. ELF è anche usato nella versione Itanium di OpenVMS, un sistema operativo non unix, e ha rimpiazzato il Preferred Executable Format su BeOS Revision 4 e successive su architetture x86, AmigaOS 4.0 e MorphOS su architettura PowerPC (BeOS su PowerPC utilizza ancora PEF), anch'essi non UNIX-based. Persino la PlayStation 2 e la PlayStation Portable usano ELF come loro formato per i file eseguibili.[senza fonte]

Layout di un file ELF

modifica

Ogni ELF file è formato da una intestazione ELF, seguita da zero o più segmenti e zero o più sezioni. I segmenti contengono informazioni necessarie per l'esecuzione del file, mentre le sezioni contengono dati importanti per il linking e la relocation. Ogni byte nell'intero file è associato a non più di una sezione per volta ma ci possono essere byte orfani, non coperti da una sezione. Nel caso normale di un eseguibile Unix, una o più sezioni sono incluse in un segmento. I segmenti e le sezioni del file sono elencate rispettivamente in una tabella nell'intestazione del programma e in una tabella nell'intestazione della sezione.

Su molti sistemi Unix, il comando man elf può dare più dettagli.

Strumenti

modifica
  • readelf è una utility che mostra informazioni su uno o più file ELF. Un'implementazione GPL è fornita da GNU Binutils.
  • elfdump è un comando di Solaris per mostrare informazioni su un file ELF.

Note

modifica
  1. ^ (EN) TIS Committee, Tool Interface Standard (TIS) Portable Formats Specification Version 1.1 (PDF), ottobre 1993, p. i. URL consultato il 20 settembre 2023.

Bibliografia

modifica

Voci correlate

modifica

Altri progetti

modifica

Collegamenti esterni

modifica
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica

📚 Artikel Terkait di Wikipedia

Portable Executable

Executable File Format di Matt Pietrek (MSDN Magazine, febbraio 2002) (EN) Part II. An In-Depth Look into the Win32 Portable Executable File Format di

Dynamic-link library

da codice la libreria. Libreria (software) Linking Executable and linkable format Portable Executable DLL, su sapere.it, De Agostini. (EN) DLL, su Enciclopedia

File system

system virtuale Formattazione Filesystem Hierarchy Standard File system distribuito Formato di file Memoria di massa Partizione (informatica) Percorso Journaling

File eseguibile

Codice oggetto File File sorgente Macchina virtuale Compilatore Linguaggio macchina Processore Exe packer (EN) Denis Howe, executable, in Free On-line

Eseguibile EXE

all'inizio del file. Il vero file eseguibile inizia subito dopo lo stub, con le due lettere "PE" che identificano il formato. Portable Executable a 64 bit:

Universal Disk Format

secondo le linee guida sull'uso delle fonti. Universal Disk Format (in acronimo UDF) è un file system creato dall'OSTA (Optical Storage Technology Association)

Windows Media Player

Coding (.aac,.adt, .adts) Waveform Audio File Format (.wav) Audio Video Interleave (.avi) Audio Interchange File Format (.aif, .aifc, .aiff) CD audio (.cda)

Esplora file

Esplora file (in inglese File explorer) è la shell e l'applicazione di gestione file adottata dal sistema operativo Windows di Microsoft a partire da Windows