Executable and Linkable Format

tiedostomuoto From Wikipedia, the free encyclopedia

Executable and Linkable Format
Remove ads

Executable and Linkable Format lyhyesti ELF on yleinen tiedostomuoto suoritettaville ohjelmille, objektitiedostoille, jaetuille kirjastoille ja coredump-tiedostoille.[1] Rakenteeltaan ELF on joustava, laajennettavissa oleva ja alustariippumaton tiedostomuoto.

Thumb
Kuva ELF-tiedoston rakenteesta. Program headerista osoittavat nuolet osoittavat segmenttejä ja section headerista ohjelman osioita.

ELF on määritelty System V ABI -määrittelyssä[2] ja Tool Interface Standards (TIS) määrittelyssä: alkuperäisen ELF-muodon kehitti ja julkaisi Unix System Laboratories (USL).[3]

Remove ads

Tiedoston rakenne

ELF-tiedosto sisältää ELF-ylätunnisteen (engl. header), joka muun muassa määrittää onko ohjelma 32 vai 64-bittinen. ELF-ylätunnisteen jälkeen tiedostossa on ohjelman ylätunnistetaulukko (engl. Program header table), itse ohjelma ja viimeiseksi ohjelman osuuksien ylätunnistetaulukko (engl. Section header table).[1]


00000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 |.ELF............|
00000010 02 00 3e 00 01 00 00 00 c5 48 40 00 00 00 00 00 |..>......H@.....|
Esimerkki ELF-ylätunnisteen hexdumpista[4]


Remove ads

ELF-ylätunniste

ELF-ylätunniste määrittää onko ohjelma 32- vai 64-bittinen. Bittisyys vaikuttaa tietueiden offsettiin.

Lisätietoja Offset, Koko (tavuja) ...

Ohjelman ylätunniste

Ohjelman ylätunnistetaulukko kertoo, kuinka ohjelma tulee ladata muistiin.

Lisätietoja Offset, Koko (tavuja) ...
Remove ads

Osion ylätunniste

Lisätietoja Offset, Koko (Tavuja) ...

Käyttökohteet

Unixin kaltaiset alustat

ELF-muoto on korvannut vanhempia muotoja useilla alustoilla kuten a.out ja COFF-muodot Unixin kaltaisissa käyttöjärjestelmissä:

Ei-Unix -alustat

ELF on myös käytössä eräillä ei-Unix alustoilla kuten:

Pelikonsolit

Eräät pelikonsolit käyttävät ELF-muotoa:

PowerPC

Muut alustat PowerPC-suorittimilla jotka käyttävät ELF-muotoa:

  • AmigaOS 4, ELF on korvannut aiemman Extended Hunk Format (EHF) muodon, jota käytettiin PPC-suorittimella varustettujen laajennuskorttien kanssa
  • MorphOS
  • AROS

Mobiililaitteet

Eräät käyttöjärjestelmät matkapuhelimille ja muille mobiililaitteille käyttävät ELF-muotoa:

  • Symbian OS v9 käyttää E32Image[16] -muotoa joka perustuu ELF-muodolle;
  • Sony Ericsson, muun muassa W800i, W610, W300 ja niin edelleen
  • Siemens, SGOLD ja SGOLD2 alustat: Siemens C65:stä S75:een ja BenQ-Siemens E71/EL71;
  • Motorola, muun muassa E398, SLVR L7, v360, v3i (ja kaikki LTE2-puhelimet joissa on päivitys).
  • Bada, esimerkiksi Samsung Wave S8500.
  • Nokia puhelimet ja tabletit Maemo- tai Meego-käyttöjärjestelmällä kuten Nokia N900.
  • Android käyttää ELF .so (shared object[17]) kirjastoja Java Native Interfacelle. Android Runtime (ART) (oletuksena Android 5.0 "Lollipop" versiosta alkaen) kaikki sovellukset käännetään natiivisti ELF-binääreiksi asennuksen yhteydessä.
Käännös suomeksi
Käännös suomeksi
Tämä artikkeli tai sen osa on käännetty tai siihen on haettu tietoja muunkielisen Wikipedian artikkelista.
Alkuperäinen artikkeli: en:Executable and Linkable Format

Ohjelmia

  • readelf ohjelma joka näyttää tietoa elf-tiedostoista.
  • elfutils vaihtoehtoinen ohjelmapaketti GNU Binutilsin tilalle, joka on tehty erityisesti Linuxia varten.[18]
  • elfdump ohjelma joka näyttää tietoa elf-tiedostosta.
  • objdump ohjelma jolla voidaan tarkastella monipuolisesti eri tietoja elf-tiedostoista ja muista binääriformaateista.
  • file ohjelma joka näyttää tietoa elf-tiedostoista.

Lähteet

Aiheesta muualla

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads