Razlika med povezovalnikom in nakladalcem

Avtor: Laura McKinney
Datum Ustvarjanja: 3 April 2021
Datum Posodobitve: 7 Maj 2024
Anonim
Zakaj zdaj vstavljam vrhunske nakladalce v svoje baseball kartice
Video.: Zakaj zdaj vstavljam vrhunske nakladalce v svoje baseball kartice

Vsebina


Linker in Loader sta uporabna programa, ki imata glavno vlogo pri izvajanju programa. Izhodna koda programa pred izvedbo preide prek prevajalnika, monterja, povezovalnika, nakladalnika v ustreznem vrstnem redu. Po eni strani, kjer je povezovalec vnese predmetne kode, ki jih ustvari monter in jih združi, da ustvari izvedljiv modul. Po drugi strani pa nakladalec ta izvedljivi modul naloži v glavni pomnilnik za izvedbo. Pogovorimo se o razliki med Linkerjem in loaderjem s primerjalno tabelo.

  1. Primerjalna tabela
  2. Opredelitev
  3. Ključne razlike
  4. Zaključek

Primerjalna tabela

Osnove za primerjavoPovezovalecNakladalnik
OsnovniGenerira izvedljiv modul izvornega programa.Izvršljivi modul naloži v glavni pomnilnik.
VnosKot vhod je predmetna koda, ki jo ustvari monter.Potreben je izvršljivi modul, ki ga ustvari povezovalec.
FunkcijaZdružuje vse objektne module izvorne kode, da ustvari izvedljiv modul.Naslove dodeli izvršljivemu modulu v glavnem pomnilniku za izvedbo.
Vrsta / pristopUrejevalnik povezav, dinamični povezovalec.Absolutno nalaganje, premikajoče se nakladanje in dinamično nalaganje.


Opredelitev Linkerja

Assembler ustvari objektno kodo izvornega programa in jo preda povezovalcu. Povezovalec vzame to predmetno kodo in ustvari izvršljiva koda za program in ga izročite nakladaču.

Jezikovni programi na visoki ravni imajo nekaj vgrajene knjižnice in datoteke z glavo. Izvorni program lahko vsebuje nekatere funkcije knjižnice, katerih definicija je shranjena v vgrajenih knjižnicah. Povezovalec te funkcije poveže z vgrajenimi knjižnicami. V primeru, da vgrajenih knjižnic ne najdemo, to sporoči prevajalniku in prevajalnik nato ustvari napako.

Včasih so veliki programi razdeljeni na imenovane podprograme moduli. Ko so ti moduli sestavljeni in sestavljeni, se ustvarijo objektni moduli izvornega programa. Povezovalec je odgovoren za združevanje / povezovanje vseh objektnih modulov za ustvarjanje ene izvršljive datoteke izvornega programa. Imamo dve vrsti povezovalcev.


Urejevalnik povezav: To je povezovalnik, ki ustvari premični, izvedljivi modul.

Dinamični povezovalec: Odloži / preloži povezavo nekaterih zunanjih modulov, dokler se ne ustvari nakladalni modul / izvedljivi modul. Tu se povezovanje izvede med časom nalaganja ali tekom.

Opredelitev nakladalca

Program, ki ga je treba trenutno izvesti, mora biti v glavnem pomnilniku računalnika. Odgovornost je za nakladalnik, program v operacijskem sistemu, ki naloži izvršljivo datoteko / modul programa, ki ga ustvari veznik, v glavni pomnilnik za izvedbo. Pomnilniški prostor dodeli izvršljivemu modulu v glavnem pomnilniku.

Obstajajo tri vrste pristopov nalaganja:

  • Popolna obremenitev
  • Prenosno nakladanje
  • Dinamična obremenitev med izvajanjem

Popolna obremenitev: Ta pristop naloži izvršljivo datoteko programa v ista glavna lokacija pomnilnika vsakič. Ima pa nekaj slabosti tako kot programer se mora zavedati strategije dodelitve za nalaganje modulov v glavni pomnilnik. V primeru, da je treba program spremeniti z nekaj vstavitvijo in brisanjem v program, je treba spremeniti vse naslove programa.

Premikanje nakladanja: Pri tem pristopu deluje prevajalnik ali sestavljalec ne ustvari dejanskega glavnega pomnilniškega naslova. Proizvaja relativne naslove.

Dinamična obremenitev med izvajanjem: Pri tem pristopu se absolutni naslov programa ustvari, ko je dejansko izvedeno navodilo izvedljivega modula. Je zelo prilagodljiv, vanj lahko naložite modul za nalaganje / izvedljiv modul poljubno območje glavnega pomnilnika. Izvajalni program lahko vmes prekinemo in ga lahko tokrat prestavimo na disk in nazaj v glavni pomnilnik na drugem glavnem naslovu pomnilnika.

  1. Ključna razlika med povezovalnikom in nalaganjem je, da povezovalec ustvari izvedljiv datoteko programa, medtem ko nalagalec naloži izvršljivo datoteko, pridobljeno iz povezovalnika, v glavni pomnilnik za izvedbo.
  2. Povezava je sprejela objektni modul programa, ki ga ustvari monter. Vendar pa nakladalnik sprejme drog izvedljiv modul ustvarjen s povezavo.
  3. Povezovalnik združuje ves objektni modul programa za generiranje izvedljive module povezuje tudi knjižnična funkcija v objektnem modulu do vgrajene knjižnice programskega jezika na visoki ravni. Po drugi strani pa nakladalnik dodeli prostor izvršljivemu modul v glavnem pomnilniku.
  4. Povezavo lahko uvrstimo med urejevalnik povezav, in dinamični povezovalec ker se nakladalnik lahko uvrsti med absolutni nakladalnik, premični nakladalnik in dinamični nakladač med izvajanjem.

Zaključek:

Povezovalec prevzame predmetne module programa iz sestavljavca in jih poveže, da ustvari izvedljiv modul programa. Izvršljivi modul nato naloži nakladalnik v glavni pomnilnik za izvedbo.