Gå til innhold

hva er relokerbar objektfil


Anbefalte innlegg

Videoannonse
Annonse

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
Lenke til kommentar

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.

Lenke til kommentar

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å
×
×
  • Opprett ny...