Rozdíl mezi Linkerem a Loaderem

Obsah:

Rozdíl mezi Linkerem a Loaderem
Rozdíl mezi Linkerem a Loaderem

Video: Rozdíl mezi Linkerem a Loaderem

Video: Rozdíl mezi Linkerem a Loaderem
Video: Various stages of program execution | Assembler, Linker & Loader | Log2Base2 2024, Červenec
Anonim

Klíčový rozdíl – Linker vs Loader

Počítačový program se používá k zadávání pokynů do počítače. Je napsán pomocí specifického programovacího jazyka. Programovací jazyky jako C, Java jsou programovací jazyky na vysoké úrovni a jsou srozumitelné lidem, ale ne počítači. Proto je program na vysoké úrovni převeden do strojového jazyka pomocí jazykového překladače. Zdrojovým kódem je program napsaný pomocí jazyka na vysoké úrovni. Po konverzi se přeložený kód nazývá objektový kód. Linker a loader jsou dva softwarové programy, které se používají pro provádění programu. Tento článek popisuje rozdíl mezi Linkerem a Loaderem. Linker je software, který propojí objektový kód s dalšími soubory, jako jsou hlavičkové soubory, a vytvoří spustitelný soubor s příponou.exe. Zavaděč je systémový software, který načte spustitelný soubor vygenerovaný linkerem do hlavní paměti. To je klíčový rozdíl mezi Linkerem a Loaderem.

Co je Linker?

Počítačový program je soubor instrukcí zadaných počítači k provedení určitého úkolu. Počítačový program lze napsat pomocí programovacího jazyka. Většina programovacích jazyků je programování na vysoké úrovni. Jsou snadno srozumitelné a čitelné pro programátora. Tyto jazyky mají syntaxi podobnou angličtině. Některé příklady jazyků vysoké úrovně jsou Java, C a Python. Program napsaný pomocí vysokoúrovňového programovacího jazyka je známý jako zdrojový kód, zdrojový soubor nebo zdrojový program. Rozšíření zdrojového kódu závisí na jazyku, ve kterém byl vyvinut. Pokud je zdrojový kód napsán v C++, pak je přípona souboru.cpp. Pokud je zdrojový kód napsán v Pythonu, přípona je.py.

Dokonce i zdrojový kód je pro programátora srozumitelný; pro počítač to není srozumitelné. Zdrojový kód by proto měl být převeden do strojově srozumitelného formátu pomocí jazykového překladače. Může to být kompilátor nebo interpret. Přeložený kód je známý jako objektový kód. Objektový kód je ve strojovém jazyce. Skládá se z nul a jednou. Počítač může přímo porozumět kódu objektu. Má příponu.obj. Pokud existuje zdrojový kód jako Test.c, projde kompilátorem a převedený kód se stane Test.obj.

Linker je software, který spojuje objektový kód s dalšími soubory, jako jsou hlavičkové soubory, a vytváří spustitelný soubor s příponou.exe. Program mohl používat vestavěné funkce. Funkce pro tyto vestavěné funkce jsou v hlavičkových souborech. Podle výše vysvětleného příkladu je objektový kód, kterým je Test.obj je přidán s nezbytnými záhlavími pomocí Linkeru. Vytvoří nový soubor s názvem Test.exe. Je to spustitelný soubor. Proto je spustitelný počítačem.

Co je Loader?

Program, který se má spustit, musí být umístěn v paměti. Linker propojí objektový kód a soubory záhlaví a vydá spustitelný soubor. Zavaděč je systémový software, který načte spustitelný soubor vygenerovaný linkerem do hlavní paměti. Přiděluje paměťový prostor spustitelnému modulu v hlavní paměti. Proto je zavaděč součástí operačního systému, který je zodpovědný za načítání programů a knihoven.

Rozdíl mezi Linkerem a Loaderem
Rozdíl mezi Linkerem a Loaderem

Obrázek 01: Pořadí, ve kterém se zdrojový kód načte do paměti

Načtení programu zahrnuje několik kroků. Zahrnuje načtení obsahu spustitelného souboru obsahujícího programovou instrukci do paměti a také provedení nezbytných přípravných úkolů ke spuštění spustitelného souboru. Jakmile je načítání dokončeno, operační systém spustí program předáním řízení načtenému kódu programu. Speciální počítačové systémy, jako jsou vestavěné systémy, obecně nemají zavaděče. Kód se spustí přímo ROM.

Jaký je vztah mezi Linkerem a Loaderem?

Výstup Linkeru jde do Loaderu

Jaký je rozdíl mezi Linkerem a Loaderem?

Linker vs Loader

Linker je software, který propojí objektový kód s dalšími soubory, jako jsou hlavičkové soubory, a vytvoří spustitelný soubor s příponou.exe. Zavaděč je systémový software, který načte spustitelný soubor vygenerovaný linkerem do hlavní paměti.
Vstup
Linker přebírá výstup jazykového překladače, kterým je kód objektu. Zavaděč přebírá výstup z linkeru, což je spustitelný soubor.
Funkčnost
Linker propojí objektový kód a hlavičkové soubory a vytvoří spustitelný soubor. Zavaděč načte spustitelný soubor získaný z linkeru do hlavní paměti.

Shrnutí – Linker vs Loader

Linker a Loader jsou dvě softwarové komponenty související s prováděním programu. Tento článek pojednával o rozdílu mezi Linkerem a Loaderem. Linker je software, který propojí objektový kód s dalšími soubory, jako jsou hlavičkové soubory, a vytvoří spustitelný soubor s příponou.exe. Zavaděč je systémový software, který načte spustitelný soubor vygenerovaný linkerem do hlavní paměti. To je rozdíl mezi Linkerem a Loaderem.

Doporučuje: