Suoritettava ja linkitettävä muoto

ELF: n
suoritettava ja linkitettävä muoto Hajotetaan ELF-tiedosto Ominaisuudet
Laajennukset -, .axf, .bin, .elf, .o, .prx, .so,.exe
PUID fmt / 689 , fmt / 688 , fmt / 691 , fmt / 690
Allekirjoitus 7F 45 4C 46( heksa )
Kehittäjä Unix System Laboratories ( sisään )
Formaatin tyyppi Alusta suoritettava tiedosto
Erittely Avoin muoto

ELF ( Suoritettava ja linkitettävä muoto , suoritettava muoto ja linkitettävissä  ; aiemmin Suoritettava ja linkittävä muoto ) on binäärimuodon muotoinen tiedosto, jota käytetään koottujen koodien (objektien, suoritettavien tiedostojen, toimintokirjastojen) tallentamiseen . Sen kehitti USL ( Unix System Laboratories ) korvata vanhat a.out ja COFF formaatteja , jotka olivat tulleet tiensä päähän. Nykyään tämä formaattia käytetään useimmissa Unix-käyttöjärjestelmille ( GNU / Linux , Solaris , IRIX , System V , BSD ), lukuun ottamatta Mac OS X .

ELF-tiedostomuoto

Jokainen ELF-tiedosto koostuu kiinteästä otsikosta , sitten segmenteistä ja osioista. Segmentit sisältävät tiedostoon sisältyvän ohjelman suorittamiseen tarvittavat tiedot, kun taas osiot sisältävät tietoja toimintojen välisten linkkien selvittämiseksi ja tietojen korvaamiseksi. Useimmissa Unix- järjestelmissä komento man elfantaa lisätietoja.

ELF-tiedoston otsikko

Otsikossa on ELF tiedoston antaa seuraavassa muodossa:

Kenttä nimi Arvo
Henkilöllisyystodistus
Indeksi Arvo
0 - Maaginen numero 0x7f
1 - Maaginen numero 'E'
2 - Maaginen numero 'The'
3 - Maaginen numero 'F'
4-64 tai 32 bittiä
  • (0) Ei mitään
  • (1) 32 bittiä
  • (2) 64 bittiä
5 - Endianness
  • (0) Ei mitään
  • (1) LSB
  • (2) MSB
6 - Otsikkomuodon versio
7 - ABI
8 - ABI-versio
9-15 Hillo 0
16 Tunnistekentän koko
Tiedostotyyppi (16 bittiä)
  • (0) Ei mitään
  • (1) Siirrettävä
  • (2) Suoritettava
  • (3) Jaettu esine
  • (4) Ydintiedosto
Kohdekone (16 bittiä)
Versio (32 bittiä)
  • (0) Ei mitään
  • (1) Nykyinen versio
Tulopiste (32 bittiä tai 64 bittiä) (0) jos ei lähtökohtaa
Ohjelman otsikon (32 bittiä tai 64 bittiä) sisältävän taulukon siirtymä (tavuina)
Osion otsikkotaulukon siirtymä (tavuina) (32 bittiä tai 64 bittiä)
Prosessorikohtaiset liput (32 bittiä)
ELF-otsikon koko (tavuina) (16 bittiä)
Ohjelman otsikon sisältävän taulukon merkinnän koko (tavuina) (16 bittiä)
Ohjelman otsikkoa sisältävän taulukon merkintöjen määrä (16 bittiä)
Osion otsikkotaulukon merkinnän koko (tavuina) (16 bittiä)
Merkintöjen lukumäärä otsikkotaulukossa (16 bittiä)
Alaotsikko otsikon taulukon otsikossa, joka liittyy osioiden nimet sisältävään taulukkoon (16 bittiä) (0), jos sitä ei ole määritelty

Vertailu muihin käyttöjärjestelmiin

Vastaavat rakenteet ovat:

Huomautuksia ja viitteitä

  1. "tonttu" -sivu .
  2. ELF-otsikko ORACLE-dokumentaatiossa .
  3. Mach-O, Applen kehittäjäsivustolla .