Mis on dünaamiline linker?

Dünaamiline linker on arvuti operatsioonisüsteemi osa, mis lingib ja laadib arvuti konkreetse käivitatava faili jaoks eraldi jagatud teegid. Käivitatava faili jagatud teegi failid sisaldavad koodifaile ja muid programmi kasutamiseks vajalikke ressursse. Need failid on programmide käitamiseks hädavajalikud; ilma nendeta ei saa rakendused lihtsalt ootuspäraselt toimida. Meetod, mille abil dünaamiline linker töötab, sõltub kasutatavast operatsioonisüsteemist.

Jagatud teegi fail on fail, mida programm vajab töötamiseks. Ilma nendele failidele juurdepääsuta ei saa programm töötada nii, nagu programmeerija on ette näinud. Enne programmi laadimist asuvad need failid kõvakettal koos kõigi teiste arvutisüsteemi failidega, kuid pärast seda, kui lõppkasutaja topeltklõpsab käivitataval (.exe) failil, hangib operatsioonisüsteem programmi jaoks vajalikud teegifailid. . Seejärel teisaldab operatsioonisüsteem need failid muutmällu (RAM), võimaldades programmil neile kiirelt ja tõhusalt juurde pääseda, kui programm töötab. Seejärel seob see jagatud teegi failid käivitatava failiga, ühendades need arvuti “mõistuses”, hoides need programmi töötamise ajal seotuna.

Kuni arvuti operatsioonisüsteem töötab, on dünaamiline linker aktiivne. See astub sisse iga kord, kui lõppkasutaja laadib programmi, korrates ülesannet leida vajalikud jagatud teegid ja teisaldada need arvuti mällu. Kuigi operatsioonisüsteem sisaldab ainult ühte dünaamilise linkeri programmi iteratsiooni, piisab sellest ühest iteratsioonist kõigi arvutis töötavate programmide käsitlemiseks.

Meetod, mille abil dünaamiline linker töötab, sõltub operatsioonisüsteemist. Näiteks protseduur, mille kohaselt dünaamiline linker töötab operatsioonisüsteemis Windows®, erineb Mac OS®-i kasutatavast meetodist. Kui Windows®-is on dünaamiline linker operatsioonisüsteemi osa, siis Mac OS®-is vaatab opsüsteem linkerit tegelikult eraldi üksusena. Kuigi rakendamine on operatsioonisüsteemide lõikes erinev, jääb dünaamilise linkeri funktsioon kõikjal konstantseks.