Zavaděč programu
Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od
verze recenzované 10. října 2016; kontroly vyžadují
5 úprav .
Loader ( anglicky loader ) - v informatice program zodpovědný za načítání spustitelných souborů a spouštění příslušných nových procesů . Bývá součástí operačního systému , ale může to být i nezávislý program – například umožňuje operačnímu systému spouštět programy kompilované pro jiné operační systémy (viz také: emulátory , WINE ).
Při spouštění nového programu musí bootloader:
- Čtení dat ze spustitelného souboru .
- V případě potřeby načtěte chybějící dynamické knihovny do paměti .
- Nahraďte relativní adresy a symbolické odkazy v kódu nového programu přesnými s přihlédnutím k aktuálnímu umístění v paměti, tedy proveďte vazbu adresy ( angl. Relocation ).
- Vytvořte obraz nového procesu v paměti a naplánujte jeho spuštění.
Na podobném principu funguje i zavaděč operačního systému , ale většinou jde o samostatný program, protože řeší konkrétní úlohu – spouštění samotného operačního systému.
Viz také
Odkazy
- Jak se spouštějí programy: binární soubory ELF Archivováno 10. října 2016 na Wayback Machine / LWN, 2015
- ld.so, ld-linux.so* – dynamický linker/loader Archivováno 22. června 2018 na Wayback Machine , manuálové stránky Linuxu
- environ, execl, execv, execle, execve, execlp, execvp - spustit soubor Archivováno 1. září 2016 na Wayback Machine / The Open Group Base Specifications Issue 6, IEEE Std 1003.1, 2004 Edition (anglicky)