Uživatelské nástroje

Nástroje pro tento web


it:sw:linux_kernel

Linux Kernel: Srdce operačního systému

Linux Kernel je nízkoúrovňový software, který řídí interakci mezi hardwarem a aplikacemi. Byl vytvořen Linusem Torvaldsem v roce 1991 a od té doby se stal nejrozsáhlejším open-source projektem na světě, na kterém spolupracují tisíce vývojářů a stovky firem.

1. Pozice v systému

Kernel běží v tzv. Privileged Mode (nebo Kernel Space), což mu dává neomezený přístup k hardwaru. Aplikace uživatele běží v User Space a s hardwarem komunikují výhradně skrze rozhraní zvané System Calls (systémová volání).

2. Hlavní úkoly jádra

Kernel plní pět základních funkcí, bez kterých by počítač nemohl fungovat:

  • Správa procesů (Process Management): Rozhoduje, který program dostane přístup k procesoru (CPU) a na jak dlouho. Zajišťuje multitasking.
  • Správa paměti (Memory Management): Přiděluje operační paměť (RAM) běžícím aplikacím a zajišťuje, aby jedna aplikace nepřepisovala data jiné.
  • Ovladače zařízení (Device Drivers): Obsahuje kód pro komunikaci s disky, grafickými kartami, klávesnicemi a dalším hardwarem.
  • Správa souborových systémů: Zajišťuje čtení a zápis dat na disky (podpora pro EXT4, XFS, Btrfs, NTFS atd.).
  • Síťová komunikace: Implementuje síťové protokoly (TCP/IP) a řídí přenos dat přes síťové karty.

3. Architektura: Monolit vs. Moduly

Linux je technicky monolitické jádro, což znamená, že celý operační systém běží v jednom velkém paměťovém prostoru. Je však vysoce modulární:

  • LKM (Linux Kernel Modules): Části kódu (často ovladače), které lze do jádra vložit nebo z něj odebrat za běhu, aniž by bylo nutné restartovat celý systém. To je klíčové pro flexibilitu Linuxu.

4. Klíčové technologie pro moderní IT

Některé funkce kernelu umožnily vznik technologií, které dnes ovládají svět:

  • Namespaces & Cgroups: Tyto funkce jádra umožnily vznik Dockeru. Namespaces izolují pohled aplikace na systém, zatímco Cgroups omezují množství RAM a CPU, které může kontejner spotřebovat.
  • eBPF: Technologie umožňující spouštět bezpečné programy přímo v jádře bez jeho modifikace (používá se pro extrémně rychlý monitoring a bezpečnost).
  • VFS (Virtual File System): Abstraktní vrstva, díky které se aplikace nemusí starat o to, jestli zapisují na SSD, USB disk nebo síťové úložiště.

5. Verze a LTS (Long Term Support)

Vývoj jádra je velmi rychlý (nová verze vychází každých pár měsíců). Pro servery a podnikovou sféru existují verze LTS, u kterých je garantována údržba a bezpečnostní opravy po dobu několika let.

Typ verze Použití
Mainline Nejnovější funkce, určeno pro vývojáře a nadšence.
Stable Odladěná verze připravená k běžnému provozu.
LTS Kritická infrastruktura, firemní servery, Android.

Související články:

Tagy: it linux kernel hardware operating-system system-calls open-source

it/sw/linux_kernel.txt · Poslední úprava: autor: admin