Vés al contingut

Format executable i enllaçable

De la Viquipèdia, l'enciclopèdia lliure
Aquesta és una versió anterior d'aquesta pàgina, de data 22:33, 8 des 2023 amb l'última edició de VoltaQantic (discussió | contribucions). Pot tenir inexactituds o contingut no apropiat no present en la versió actual.
Infotaula de format de fitxerExecutable and Linkable Format
TipusBinary, executable, object, shared library, core dump
Extensiócap valor, axf, bin, elf, o, prx i so Modifica el valor a Wikidata
Magic number7F454C46 Modifica el valor a Wikidata
DesenvolupadorUnix System Laboratories
Més informació
Stack ExchangeEtiqueta i Etiqueta Modifica el valor a Wikidata
Wiki del format de fitxerExecutable_and_Linkable_Format Modifica el valor a Wikidata
PRONOMfmt/689, fmt/688, fmt/691 i fmt/690 Modifica el valor a Wikidata

En informàtica, el format executable i enllaçable (ELF, abans anomenat Extensible Linking Format), és un format de fitxer estàndard comú per a fitxers executables, codi objecte, biblioteques compartides i abocadors de nucli. Publicat per primera vegada a l'especificació per a la interfície binària de l'aplicació (ABI) de la versió del sistema operatiu Unix anomenada System V Release 4 (SVR4), i més tard a Tool Interface Standard, va ser ràpidament acceptat entre diferents proveïdors de Sistemes Unix. El 1999, va ser escollit com a format de fitxer binari estàndard per a sistemes Unix i similars a Unix en processadors x86 pel projecte 86open. [1]

Un fitxer ELF té dues vistes: la capçalera del programa mostra els segments utilitzats en temps d'execució, mentre que la capçalera de la secció enumera el conjunt de seccions.

Per disseny, el format ELF és flexible, extensible i multiplataforma. Per exemple, admet diferents endians i mides d'adreces, de manera que no exclou cap unitat de processament central (CPU) o arquitectura de conjunt d'instruccions en particular. Això ha permès que sigui adoptat per molts sistemes operatius diferents en moltes plataformes de maquinari diferents. [2]

Disposició del fitxer

Cada fitxer ELF està format per una capçalera ELF, seguida de les dades del fitxer. Les dades poden incloure: [3]

  • Taula de capçalera del programa, que descriu zero o més segments de memòria.
  • Taula de capçalera de secció, que descriu zero o més seccions.
  • Dades a les quals fan referència les entrades de la taula de capçalera del programa o de la taula de capçalera de la secció.
Estructura d'un fitxer ELF amb les entrades clau destacades

Els segments contenen informació necessària per a l'execució del fitxer en temps d'execució, mentre que les seccions contenen dades importants per a l'enllaç i la reubicació. Qualsevol byte de tot el fitxer pot ser propietat d'una secció com a màxim, i es poden produir bytes orfes que no són propietat de cap secció. [4]


Referències

  1. Ganiga, Raghavendra Chandra. «Understanding ELF, the Executable and Linkable Format» (en anglès americà), 07-02-2020. [Consulta: 8 desembre 2023].
  2. «What Is an ELF File?» (en anglès). [Consulta: 8 desembre 2023].
  3. «TIS Committee May 1995 Tool Interface Standard (TIS) Executable and Linking Format (ELF) Specification» (en anglès). [Consulta: 8 desembre 2023].
  4. «[https://flint.cs.yale.edu/cs422/doc/ELF_Format.pdf I Executable and Linkable Format (ELF)]» (en anglès). [Consulta: 8 juliol 2023].