Gå til innhold

hva er relokerbar objektfil


Anbefalte innlegg

Videoannonse
Annonse
Skrevet (endret)

gcc prog.c -fPIC -c

Gir deg en relokerbar objektfil med navn prog.o.

 

Veldig kort handler det om at absolutte adresser skal kunne justeres i objektfilene f.eks. ved oppstart av programmet, eller når man linker. Altså ting foregår i forhold til et referansepunkt (adresse) i stedet for et "fast punkt" (adresse). Slik kan koden kjøres uavhengig av hvor den er plassert.

 

-fPIC fra dokumentasjonen til GCC:

http://gcc.gnu.org/onlinedocs/gcc-3.4.0/gc...20Gen%20Options

 

Edit:

"position independent code" @ Google gir deg sansynligvis bedre svar enn det jeg makter å forklare. :]

Endret av søppel
Skrevet

Jeg tror vi må skille mellom relokerbar ved linking og runtime; sånn jeg forstår spørsmålet dreier det seg om vanlige objektfiler som linkes sammen, med endingen .o på UNIX (og .obj i Windows?). En relokerbar objektfil er et stykke med kompilert kode med relative adresser, disse oppdateres (gjøres absolutte) av linkeren hvis jeg ikke husker helt feil.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...