Vad är skillnaden mellan objektfil och körbar fil

De huvudskillnad mellan objektfilen och körbar fil är det en objektfil är en fil som genereras efter sammanställning av källkoden medan en körbar fil är en fil som genereras efter att ha länkat en uppsättning objektfiler tillsammans med en länkare.  

C är ett generellt programmerat språk på hög nivå. Dessutom är det ett strukturerat programmeringsspråk som hjälper till att skriva effektiva program. Operativsystem, språk kompilatorer, textredigerare, nätverksdrivrutiner, databaser är några applikationer av C programmeringsspråk. Objektfil och körbar fil är två filer relaterade till C-programmering.

Viktiga områden som omfattas

1. Vad är Objektfil
     - Definition, Funktionalitet
2. Vad är exekverbar fil
     - Definition, Funktionalitet
3. Vad är förhållandet mellan objektfil och körbar fil
     - Föreningens sammanfattning
4. Vad är skillnaden mellan objektfil och körbar fil
     - Jämförelse av viktiga skillnader

Nyckelbegrepp

C Språk, Exekverbar fil, Objektfil

Vad är Objektfil

Först och främst är C-programmet en uppsättning instruktioner skrivna i C-programmeringsspråket för att utföra en specifik uppgift. Detta program kallas källkoden. Programmeraren kan läsa och förstå källkoden, men processorn förstår inte den. Därför är det nödvändigt att konvertera källkoden till ett maskinförståeligt format. En objektkod genereras efter sammanställning av källkoden.

Figur 1: Källkod

Objektfil är ett annat namn för objektkoden. Objektfilen har .obj-tillägget i Windows-miljö. Dessutom har objektfilen den. o filtillägg i Linux miljö. Men CPU kan inte direkt utföra objektfilen.

Vad är exekverbar fil

Efter att ha skrivit C-programmet, om det finns syntaxfel, ska programmeraren redigera dem. Om det inte finns några syntaxfel konverterar kompilatorn källkoden till en objektfil. Sedan utför länken länkningsprocessen. Det tar en eller flera objektfiler som genereras av kompilatorn och kombinerar dem i en enda körbar fil. Dessutom länkar den andra programfiler och funktioner som programmet kräver. Om programmet till exempel har funktionen "exp ()", länkar länken programmet med matematikbiblioteket i systemet.

Figur 2: Skapa en körbar fil

Programmeraren förstår inte instruktionerna i den körbara filen, men CPU kan läsa och förstå dessa instruktioner. Därför exekverar CPUen direkt den körbara filen för att utföra de definierade uppgifterna i programmet.

Förhållande mellan objektfil och körbar fil

  • Objektfiler kombineras för att skapa en körbar fil.

Skillnad mellan objektfil och körbar fil

Definition

En objektfil är en fil som innehåller en objektkod som har flyttbar maskinkod som inte kan köras direkt. En körbar fil är en fil som kan köras direkt av datorn och kan utföra de angivna uppgifterna enligt de kodade instruktionerna. Därför förklarar detta huvudskillnaden mellan objektfil och körbar fil.

Typ

En annan skillnad mellan objektfil och körbar fil är att en objektfil är en mellanfil men en körbar fil är en slutlig fil.

Funktionalitet

Dessutom omvandlar kompilatorn källkoden till en objektfil. Linker länkar dock objektfilerna med systembiblioteket och kombinerar objektfilerna tillsammans för att skapa en körbar fil.

Direkt utförande av CPU

CPU: n kan inte direkt utföra objektfilen medan CPU kan direkt utföra en körbar fil. Således är detta en stor skillnad mellan objektfil och körbar fil.

Slutsats

Sammanfattningsvis är Objektfil och körbar fil två filer relaterade till C-programmering. Huvudskillnaden mellan objektfil och exekverbar fil är att en objektfil är en fil som genereras efter att ha sammanställt källkoden medan en körbar fil är en fil som genereras efter att ha kopplat en uppsättning objektfiler tillsammans med en länkare. 

Referens:

1. "Linker (Computing)." Wikipedia, Wikimedia Foundation, 6 oktober 2018, Tillgänglig här.

Image Courtesy:

1. "Källkod i C" Av Romainhk - Egent arbete (bild och kod) (CC BY-SA 3.0) via Commons Wikimedia
2. "C-språkbyggnadssteg" (CC BY-SA 3.0) via Commons Wikimedia