Program laddare
Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från
versionen som granskades den 10 oktober 2016; kontroller kräver
5 redigeringar .
Loader ( engelsk loader ) - inom datavetenskap , ett program som ansvarar för att ladda körbara filer och starta motsvarande nya processer . Det är vanligtvis en del av operativsystemet , men det kan också vara ett oberoende program - till exempel låter operativsystemet köra program kompilerade för andra operativsystem (se även: emulatorer , WINE ).
När du startar ett nytt program måste starthanteraren:
- Läs data från körbar fil .
- Om det behövs, ladda de saknade dynamiska biblioteken till minnet .
- Byt ut relativa adresser och symboliska länkar i det nya programmets kod med exakta, med hänsyn till den aktuella platsen i minnet, det vill säga utför adressbindning ( eng. Relocation ).
- Skapa en bild av en ny process i minnet och schemalägg den för exekvering.
Operativsystemladdaren fungerar på en liknande princip, men är vanligtvis ett separat program, eftersom det löser en specifik uppgift - att starta själva operativsystemet.
Se även
Länkar
- Hur program körs: ELF-binärfiler Arkiverade 10 oktober 2016 på Wayback Machine / LWN, 2015
- ld.so, ld-linux.so* - dynamisk länkare/lastare Arkiverad 22 juni 2018 på Wayback Machine , Linux man-sidor
- environ, execl, execv, execle, execve, execlp, execvp - kör en fil Arkiverad 1 september 2016 på Wayback Machine / The Open Group Base Specifications Issue 6, IEEE Std 1003.1, 2004 Edition (engelska)