Számítógépes program segítségével utasításokat ad a számítógépnek. Egy speciális programozási nyelv használatával írják. A programozási nyelvek, például a C, a Java magas szintű programozási nyelvek, és érthetőek az emberek számára, de nem a számítógép számára. Ezért egy magas szintű programot fordítóval konvertálnak gépi nyelvre. A magas szintű nyelven írt program forráskód. A konvertálás után a lefordított kódot objektumkódnak nevezzük. A kapcsoló és a betöltő két szoftver program, amelyeket a program végrehajtásához használnak. Ez a cikk a Linker és a Loader közötti különbséget tárgyalja. A Linker az a szoftver, amely összekapcsolja az objektumkódot további fájlokkal, például fejléc fájlokkal, és létrehoz egy végrehajtható fájlt .exe kiterjesztéssel. A betöltő az a rendszerszoftver, amely betölti a kapcsoló által generált végrehajtható fájlt a fő memóriába. Ez a kulcs különbség a Linker és a Rakodó között.
1. Áttekintés és a legfontosabb különbség
2. Mi a Linker?
3. Mi a rakodógép?
4. Kapcsolat a Linker és a Rakodó között
5. Összehasonlítás - Linker vs Loader táblázatos formában
6. Összegzés
A számítógépes program az utasítások halmaza, amelyet a számítógéphez adnak egy bizonyos feladat végrehajtásához. Egy számítógépes program programozási nyelv használatával írható. A legtöbb programozási nyelv magas szintű programozás. A programozó könnyen érthető és olvasható. Ezek a nyelvek az angol nyelvhez hasonló szintaxist követnek. Néhány példa a magas szintű nyelvekre: Java, C és Python. A magas szintű programozási nyelvvel írt program forráskód, forrásfájl vagy forrásprogram néven ismert. A forráskód kiterjesztése attól a nyelvetől függ, amelyen kifejlesztették. Ha a forráskód C ++ nyelven íródott, akkor a .cpp fájlkiterjesztés. Ha a forráskód Python-ban van írva, akkor a kiterjesztés .py.
Még a forráskód is érthető a programozó számára; ez a számítógép számára nem érthető. Ezért a forráskódot nyelvi fordító segítségével gépi érthetõ formátumba kell konvertálni. Lehet fordító vagy tolmács. A lefordított kód objektumkód. Az objektum kódja gépi nyelven van. Nullákból áll és egyszer. A számítógép közvetlenül meg tudja érteni az objektumkódot. A .obj kiterjesztésű. Ha van egy forráskód mint Test.c, akkor áthalad a fordítón, és a konvertált kód Test.obj lesz.
A Linker az a szoftver, amely összekapcsolja az objektumkódot további fájlokkal, például fejléc fájlokkal, és létrehoz egy végrehajtható fájlt .exe kiterjesztéssel. Lehet, hogy a program beépített funkciókat használt. A beépített funkciók funkciói a fejléc fájlokban találhatók. A fenti magyarázat szerint a Test.obj objektumkódot a Linker segítségével hozzáadjuk a szükséges fejléc fájlokhoz. Létrehoz egy új ,.exe nevű fájlt. Ez egy futtatható fájl. Ezért a számítógép futtathatja.
A végrehajtandó programot be kell helyezni a memóriába. A kapcsoló összekapcsolja az objektumkódot és a fejléc fájlokat, és kiadja a végrehajtható fájlt. A betöltő az a rendszerszoftver, amely betölti a kapcsoló által generált végrehajtható fájlt a fő memóriába. A memóriaterületet a fő memória végrehajtható moduljára osztja. Ezért a betöltő az operációs rendszer része, amely felelős a programok és a könyvtárak betöltéséért.
01. ábra: A forráskód memóriabe töltésének sorrendje
A program betöltése több lépésből áll. Ez magában foglalja a program utasítást tartalmazó futtatható fájl tartalmának a memóriába történő beolvasását és a végrehajtható fájl futtatásához szükséges előkészítő feladatok elvégzését. A betöltés befejezése után az operációs rendszer elindítja a programot úgy, hogy átadja a vezérlést a betöltött programkódnak. A speciális számítógépes rendszerek, például a beágyazott rendszerek általában nem tartalmaznak rakodót. A kódot közvetlenül a ROM hajtja végre.
Linker vs Loader | |
A Linker az a szoftver, amely összekapcsolja az objektumkódot további fájlokkal, például fejléc fájlokkal, és létrehoz egy végrehajtható fájlt .exe kiterjesztéssel. | A betöltő az a rendszerszoftver, amely betölti a kapcsoló által generált végrehajtható fájlt a fő memóriába. |
Bemenet | |
A kapcsoló veszi a nyelvfordító kimenetét, azaz az objektumkódot. | A betöltő a linkertől veszi a kimenetet, amely a végrehajtható fájl. |
funkcionalitás | |
A kapcsoló összekapcsolja az objektumkódot és a fejléc fájlokat, és kiadja a végrehajtható fájlt. | A betöltő betölti a linkerből nyert végrehajtható fájlt a fő memóriába. |
A Linker és a Loader két szoftverösszetevő, amelyek a program végrehajtásával kapcsolatosak. Ez a cikk a Linker és a Rakodó közötti különbséget tárgyalta. A Linker az a szoftver, amely összekapcsolja az objektumkódot további fájlokkal, például fejléc fájlokkal, és létrehoz egy végrehajtható fájlt .exe kiterjesztéssel. A betöltő az a rendszerszoftver, amely betölti a kapcsoló által generált végrehajtható fájlt a fő memóriába. Ez a különbség a Linker és a Rakodó között.
1. „Lader (számítástechnika) ”, Wikipedia, Wikimedia Foundation, 2018. február 28.