Razlika između povezivača i učitavača

Sadržaj:

Razlika između povezivača i učitavača
Razlika između povezivača i učitavača

Video: Razlika između povezivača i učitavača

Video: Razlika između povezivača i učitavača
Video: What is the difference between a blood clot and a thrombus? 2024, Srpanj
Anonim

Ključna razlika – Linker vs Loader

Računalni program se koristi za davanje uputa računalu. Napisan je pomoću specifičnog programskog jezika. Programski jezici kao što su C, Java su programski jezici visoke razine i razumljivi su ljudima, ali ne i računalu. Stoga se program visoke razine pretvara u strojni jezik pomoću jezičnog prevoditelja. Program napisan korištenjem jezika visoke razine je izvorni kod. Nakon konverzije, prevedeni kod se naziva objektni kod. Povezivač i učitavač dva su softverska programa koji se koriste za izvođenje programa. Ovaj članak govori o razlici između povezivača i učitavača. Linker je softver koji povezuje objektni kod s dodatnim datotekama kao što su datoteke zaglavlja i stvara izvršnu datoteku s nastavkom.exe. Učitavač je sistemski softver koji učitava izvršnu datoteku koju generira povezivač u glavnu memoriju. To je ključna razlika između povezivača i učitavača.

Što je Linker?

Računalni program je skup uputa koje se daju računalu da izvrši određeni zadatak. Računalni program može se napisati korištenjem programskog jezika. Većina programskih jezika je programiranje visoke razine. Lako su razumljivi i čitljivi programeru. Ti jezici slijede sintaksu sličnu engleskom jeziku. Neki primjeri jezika visoke razine su Java, C i Python. Program napisan korištenjem programskog jezika visoke razine poznat je kao izvorni kod, izvorna datoteka ili izvorni program. Proširenje izvornog koda ovisi o jeziku na kojem je razvijen. Ako je izvorni kod napisan u C++, ekstenzija datoteke je.cpp. Ako je izvorni kod napisan u Pythonu, ekstenzija je.py.

Čak je i izvorni kod razumljiv programeru; to nije razumljivo računalu. Stoga bi izvorni kod trebao biti pretvoren u strojno razumljiv format pomoću jezičnog prevoditelja. Može biti kompilator ili interpreter. Prevedeni kod je poznat kao objektni kod. Objektni kod je u strojnom jeziku. Sastoji se od nula i jedan. Računalo može izravno razumjeti objektni kod. Ima nastavak.obj. Ako postoji izvorni kod kao Test.c, on prolazi kroz kompajler i konvertirani kod postaje Test.obj.

Linker je softver koji povezuje objektni kod s dodatnim datotekama kao što su datoteke zaglavlja i stvara izvršnu datoteku s nastavkom.exe. Program je možda koristio ugrađene funkcije. Funkcionalnosti za te ugrađene funkcije nalaze se u datotekama zaglavlja. Prema gore objašnjenom primjeru, kod objekta koji je Test.obj se dodaje s potrebnim datotekama zaglavlja pomoću povezivača. Stvara novu datoteku poznatu pod nazivom Test.exe. To je izvršna datoteka. Stoga je izvršna na računalu.

Što je Loader?

Program koji bi se trebao izvršiti mora biti smješten u memoriju. Linker povezuje objektni kod i datoteke zaglavlja i daje izvršnu datoteku. Učitavač je sistemski softver koji učitava izvršnu datoteku koju generira povezivač u glavnu memoriju. Dodjeljuje memorijski prostor izvršnom modulu u glavnoj memoriji. Dakle, loader je dio operativnog sustava koji je odgovoran za učitavanje programa i biblioteka.

Razlika između povezivača i učitavača
Razlika između povezivača i učitavača

Slika 01: Redoslijed kojim se izvorni kod učitava u memoriju

Učitavanje programa uključuje nekoliko koraka. Uključuje čitanje sadržaja izvršne datoteke koja sadrži programske instrukcije u memoriju i također izvršavanje potrebnih pripremnih zadataka za pokretanje izvršne datoteke. Nakon što je učitavanje završeno, operativni sustav pokreće program prosljeđujući kontrolu učitanom programskom kodu. Posebni računalni sustavi kao što su ugrađeni sustavi općenito nemaju učitavače. Kod se izvršava izravno u ROM-u.

Kakav je odnos između povezivača i učitavača?

Izlaz povezivača ide u učitavač

Koja je razlika između povezivača i učitavača?

Povezivač vs učitavač

Linker je softver koji povezuje objektni kod s dodatnim datotekama kao što su datoteke zaglavlja i stvara izvršnu datoteku s nastavkom.exe. Učitavač je sistemski softver koji učitava izvršnu datoteku koju generira povezivač u glavnu memoriju.
Unos
Povezivač preuzima izlaz jezičnog prevoditelja, koji je objektni kod. Učitavač preuzima izlaz iz povezivača, koji je izvršna datoteka.
Funkcionalnost
Povezivač povezuje objektni kod i datoteke zaglavlja i daje izvršnu datoteku. Učitavač učitava izvršnu datoteku dobivenu iz povezivača u glavnu memoriju.

Sažetak – Linker vs Loader

Povezivač i učitavač dvije su softverske komponente povezane s izvođenjem programa. Ovaj članak raspravlja o razlici između povezivača i učitavača. Linker je softver koji povezuje objektni kod s dodatnim datotekama kao što su datoteke zaglavlja i stvara izvršnu datoteku s nastavkom.exe. Učitavač je sistemski softver koji učitava izvršnu datoteku koju generira povezivač u glavnu memoriju. To je razlika između povezivača i učitavača.

Preporučeni: