1 Jádro

Jádro (kernel) v UNIXu je pro mnoho odborníků synonymem operačního systému. Není tomu přesně tak, protože jádro sice spravuje všechny výpočetní zdroje hardwaru, ale umožňuje přístup k počítači programátorům, nikoliv běžným uživatelům. Pro uživatele jsou určeny další části operačního systému, programy, které jim umožňují s jádrem komunikovat pomocí příkazového řádku nebo grafického rozhraní. Tyto programy pak převádějí jejich požadavky na rozhraní, které používají programátoři. Stejně tak správa operačního systému se opírá o řadu běžících programů, které jádru sdělují (opět v řeči programátorů) požadavky na manipulace s výpočetními zdroji v celkovém kontextu. Každopádně je ale jádro určující pro techniky přístupu k výpočetním zdrojům a manipulaci s nimi.
Jádro je program, který běží na holém stroji (tzv. standalone program). Ostatní programy, které uživatelé nebo správa systému používají, jsou sice také prováděny strojem, ale pod dohledem a řízením jádra (říkáme, že jádro je supervizorem běžících programů). Pomocné hardwarové programy (tzv. firmware, programy monitoru hardwaru) jádro zavedou do operační paměti1  a předají mu řízení. Tím je operační systém nastartován. Jádro obalí hardware a od tohoto okamžiku až do zastavení jádra nelze přistupovat k hardwaru jinak než pomocí požadavků na jádro - tzv. volání jádra (system calls). Tím oddělí operační systém programátory od holého stroje. Uživatelé jsou pak od jádra odděleni pomocí aplikačních programů. Vychází nám tedy vrstvená struktura operačního systému, viz obr. 1.1.
 
Obr. 1.1  Vrstvy operačního systému UNIX

Na obrázku jsou slovně označeny jednak jednotlivé vrstvy (jádro, programy, uživatelé) a jednak jejich ...


1RAM (Random Access Memory), v překladu paměť s libovolným přístupem, tj. pro čtení i zápis. Na rozdíl od ROM (Read Only Memory), paměť pouze pro čtení. V obou případech jde o typ paměti, ve které se procesor pohybuje v přímé adresaci.