Co je dynamický linker?
Dynamický linker je část operačního systému počítače, která propojuje a načítá jednotlivé sdílené knihovny pro konkrétní spustitelný soubor v počítači. Soubory sdílené knihovny spustitelného souboru zahrnují kódové soubory a další zdroje potřebné k použití programu. Tyto soubory jsou nezbytné pro spouštění programů; bez nich aplikace jednoduše nemohou fungovat podle očekávání. Způsob fungování dynamického linkeru se liší v závislosti na použitém operačním systému.
Soubor sdílené knihovny je soubor, který program potřebuje k provozu. Bez přístupu k těmto souborům se program nebude moci spustit tak, jak to programátor zamýšlel. Před načtením programu jsou tyto soubory obsaženy na pevném disku spolu se všemi ostatními soubory v počítačovém systému, ale poté, co koncový uživatel dvakrát klikne na spustitelný soubor (.exe), operační systém načte soubory knihovny požadované programem. . Operační systém poté tyto soubory přesune do paměti s náhodným přístupem (RAM), což umožňuje programu rychlý a efektivní přístup k nim, zatímco je program v provozu. Poté spojí soubory sdílené knihovny s spustitelným souborem a spojí je dohromady v „mysli“ v počítači, přičemž je při spuštění programu spojí.
Dokud je spuštěn operační systém počítače, je dynamický linker aktivní. Kroky pokaždé, když koncový uživatel načte program, opakují úlohu nalezení požadovaných sdílených knihoven a jejich přesunutí do paměti počítače. Zatímco operační systém obsahuje pouze jednu iteraci dynamického linkerového programu, jedna iterace stačí ke zpracování všech programů spuštěných v počítači.
Metoda, kterou dynamický linker funguje, závisí na operačním systému. Například postup, kterým dynamický linker pracuje pro operační systém Windows®, se liší od metody používané v Mac OS®. Zatímco v systému Windows® je dynamický linker součástí operačního systému, v systému Mac OS® je linker ve skutečnosti operačním systémem vnímán jako samostatná entita. Ačkoli se implementace v jednotlivých operačních systémech liší, funkce dynamického linkeru zůstává napříč deskou konstantní.