Nyckelskillnad – Linker vs Loader
Ett datorprogram används för att ge instruktioner till datorn. Det är skrivet med ett specifikt programmeringsspråk. Programmeringsspråk som C, Java är programmeringsspråk på hög nivå och de är förståeliga av människor men inte av datorn. Därför konverteras ett högnivåprogram till maskinspråk med hjälp av en språköversättare. Ett program skrivet med ett högnivåspråk är en källkod. Efter konverteringen kallas den översatta koden för objektkoden. Länkaren och laddaren är två program som används för programkörning. Den här artikeln diskuterar skillnaden mellan Linker och Loader. Linker är programvaran som länkar objektkoden med ytterligare filer som header-filer och skapar en körbar fil med.exe-tillägget. Laddaren är systemprogramvaran som laddar den körbara filen som genereras av länken till huvudminnet. Det är den viktigaste skillnaden mellan Linker och Loader.
Vad är Linker?
Ett datorprogram är en uppsättning instruktioner som ges till en dator för att utföra en viss uppgift. Ett datorprogram kan skrivas med hjälp av ett programmeringsspråk. De flesta programmeringsspråk är programmering på hög nivå. De är lätta att förstå och läsbara av programmeraren. Dessa språk följer en syntax som liknar det engelska språket. Några exempel på högnivåspråk är Java, C och Python. Ett program skrivet med ett högnivåprogrammeringsspråk kallas källkoden, källfilen eller källprogrammet. Utvidgningen av källkoden beror på vilket språk den utvecklades med. Om källkoden är skriven i C++ är filtillägget.cpp. Om källkoden är skriven i Python är tillägget.py.
T och med källkoden är förståelig av programmeraren; det är inte förståeligt av datorn. Därför bör källkoden konverteras till maskinförståeligt format med hjälp av en språköversättare. Det kan vara en kompilator eller en tolk. Den översatta koden kallas objektkoden. Objektkoden är på maskinspråk. Den består av nollor och en gång. Datorn kan direkt förstå objektkoden. Den har tillägget.obj. Om det finns en källkod som Test.c går den igenom kompilatorn och konverterad kod blir Test.obj.
Linker är programvaran som länkar objektkoden med ytterligare filer som header-filer och skapar en körbar fil med.exe-tillägget. Programmet kan ha använt inbyggda funktioner. Funktionerna för dessa inbyggda funktioner finns i header-filerna. Enligt det ovan förklarade exemplet, objektkoden som är Test.obj läggs till med nödvändiga rubrikfiler med hjälp av länken. Den skapar en ny fil som kallas Test.exe. Det är en körbar fil. Därför är det körbart av datorn.
Vad är Loader?
Ett program som ska köras måste placeras i minnet. Länkaren länkar objektkoden och rubrikfilerna och matar ut den körbara filen. Laddaren är systemprogramvaran som laddar den körbara filen som genereras av länken till huvudminnet. Den allokerar minnesutrymmet till den körbara modulen i huvudminnet. Därför är en loader en del av operativsystemet som ansvarar för att ladda program och bibliotek.
Figur 01: Ordning i vilken källkoden laddas till minnet
Ladda ett program omfattar flera steg. Det innebär att läsa innehållet i den körbara filen som innehåller programinstruktionen i minnet och även att utföra de nödvändiga förberedande uppgifterna för att köra den körbara filen. När laddningen är klar startar operativsystemet programmet genom att skicka kontrollen till den laddade programkoden. Speciella datorsystem som inbyggda system har i allmänhet inga lastare. Koden körs direkt av ROM.
Vilket är förhållandet mellan länkare och lastare?
Utgången från Linkern går till Loader
Vad är skillnaden mellan Linker och Loader?
Linker vs Loader |
|
Linker är programvaran som länkar objektkoden med ytterligare filer såsom header-filer och skapar en körbar fil med.exe-tillägget. | Lastaren är systemprogramvaran som laddar den körbara filen som genereras av länken till huvudminnet. |
Indata | |
Länkaren tar utdata från språköversättaren, som är objektkoden. | Laddaren tar utdata från länken, som är den körbara filen. |
Functionality | |
Länkaren länkar objektkoden och rubrikfilerna och matar ut den körbara filen. | Laddaren laddar den körbara filen som hämtats från länken till huvudminnet. |
Sammanfattning – Linker vs Loader
Linker och Loader är två programvarukomponenter relaterade till programkörning. Den här artikeln diskuterade skillnaden mellan Linker och Loader. Linker är programvaran som länkar objektkoden med ytterligare filer som header-filer och skapar en körbar fil med.exe-tillägget. Laddaren är systemprogramvaran som laddar den körbara filen som genereras av länken till huvudminnet. Det är skillnaden mellan Linker och Loader.