Obsah
Ovladač (Hardware Driver)
Ovladač je softwarová vrstva, která abstrahuje vlastnosti hardwaru. Díky ovladačům nemusí programátoři aplikací psát kód pro každý model tiskárny nebo grafické karty na trhu. Stačí, když aplikace pošle standardní požadavek operačnímu systému, a ten jej pomocí ovladače předá zařízení.
Jak ovladač funguje?
Ovladač pracuje jako prostředník v hierarchii systému:
1. **Aplikace:** Uživatel klikne na "Uložit soubor". 2. **Operační systém:** Přijme požadavek a identifikuje, na který disk se má ukládat. 3. **Ovladač:** Přeloží příkaz na konkrétní sekvenci elektrických signálů a adres v paměti, které ovládají řadič disku. 4. **Hardware:** Fyzicky zapíše data na médium.
Typy ovladačů
1. Kernel-mode ovladače
Běží jako součást jádra operačního systému. Mají nejvyšší oprávnění a přímý přístup k hardwaru. Pokud v tomto ovladači dojde k chybě, obvykle dojde k pádu celého systému (tzv. „Modrá smrt“ na Windows nebo „Kernel Panic“ na Linuxu).
2. User-mode ovladače
Běží v omezeném prostoru pro uživatelské aplikace. Používají se pro zařízení, u kterých není kritická rychlost a je preferována stabilita (např. některé USB periferie). Pokud tento ovladač selže, systém zůstane běžet.
Ovladače v různých systémech
- Windows: Ovladače jsou často instalovány jako soubory s příponou
.sysnebo.inf. Microsoft používá model WDM (Windows Driver Model). - Linux: Většina ovladačů je integrována přímo v jádře jako moduly (LKM). To je důvod, proč většina hardwaru na Linuxu funguje „hned po zapojení“ bez instalace CD.
- macOS: Používá systém „Extensions“ (.kext) pro rozšíření funkčnosti jádra o podporu hardwaru.
Proč jsou ovladače zdrojem problémů?
Ovladače jsou jedním z nejčastějších důvodů nestability počítačů:
- Zastaralost: Nová verze operačního systému může vyžadovat novou architekturu ovladače.
- Chyby v kódu: Protože ovladače často píší výrobci hardwaru (nikoliv autoři OS), nemusí být kód vždy dokonale optimalizován pro daný systém.
- Bezpečnost: Špatně napsaný ovladač může sloužit jako brána pro útoky (např. rootkity), protože má přístup k celému systému.
Speciální kategorie: Grafické ovladače
Grafické karty (NVIDIA, AMD) mají nejkomplexnější ovladače. Neobsahují jen instrukce pro hardware, ale často i celé kompilátory pro shadery a rozhraní pro herní knihovny jako DirectX nebo Vulkan.
Související pojmy: Linux Kernel, Hardware, CPU, RAM, Rootkit, Shader, BIOS/UEFI.
