Operační systémy - prostředníci mezi uživatelem a počítačem

Operační systém je základním programem, který umožňuje všechny ty zajímavé věci, které můžeme na počítači provozovat. Vytváří prostředí, ve kterém je možné spouštět programy, obstarává komunikaci s řídicím systémem na základní desce, a ovládá tak hardwarové vybavení počítače. Jeho kvality i chyby mají velký vliv na spokojenost uživatele.

Související odkazy

Slovník
API
Apple
BIOS
boot
desktop
HAL
linux
multitasking
procesor
Unix
virtuální

Pod pojmem operační systém si každý může představovat něco jiného. V případě MS Windows, Mac OS či jiných se jedná o základní systém v počítači s několika doplňkovými aplikacemi. V případě linuxových distribucí můžete nabýt dojmu, že operační systém se skládá z tisícovek aplikací. Ať již obsahuje jakékoli rozšíření, hlavní částí operačního systému je jeho jádro.

Operační systémy se v podobě, v jaké je známe nyní, začaly vyvíjet na přelomu šedesátých a sedmdesátých let, kdy společně s jazykem C spatřil světlo světa operační systém Unix. Opravdová rozšířenost však přišla až v éře rychle se zmenšujících a zrychlujících mikroprocesorů a osobních počítačů. Běžné uživatele oslovil především jednoduchý systém MS-DOS společnosti Microsoft a od devadesátých let už zcela ovládla běžné desktopy Windows téže firmy. Na principech Unixu zase staví novější Linux nebo FreeBSD a o svůj díl koláče se neustále pere Mac OS pro počítače Apple.

Více systémů si žádá manažera

Aby bylo možné operační systém spustit, je nutné nainstalovat tzv. zavaděč. Základní systém počítače, BIOS, vyhledává v nastaveném pořadí spouštěcí záznamy na pevných discích, případně disketách, CD atd. Budete-li se zabývat pouze pevným diskem, najdete spouštěcí záznam v prvním sektoru nulté stopy nultého povrchu disku. Jakmile je spouštěcí záznam načten do paměti, zajistí nahrání jádra operačního systému. Tomuto pravidlu se vymyká použití zaváděcích (bootovacích) manažerů. Ty jsou načteny BIOSem a umožňují volbu pro zavedení operačního systému z různých částí disku.

Klepněte pro větší obrázek

Bootovací manažeři jako například XOSL vám umožní mít na počítači hned několik operačních systémů a při startu mezi nimi jednoduše vybírat

Jádro operačního systému se stará o komunikaci s počítačem: přijímá vstupy a vytváří výstupy z počítače. Podle počtu procesorů, které jádro dokáže najednou využít, můžete operační systémy rozdělit na jednoprocesorové a multiprocesorové. Typickým zástupcem první kategorie jsou rané systémy pro osobní počítače, z nichž je nejznámější zřejmě MS-DOS. Patří sem také starší verze Windows, které ve svých počátcích byly vlastně jen grafickou nadstavbou nad DOSem. Více procesorů v počítači dokáží využít unixové systémy Unix, Linux, FreeBSD a podobné. Také Windows řady NT (NT/2000/2003, příp. XP) zvládnou využít výkonu více procesorů.

Není jádro jako jádro

Jádra operačních systémů rozdělujeme do několika typů. Operační systémy s monolitickým jádrem jsou tvořeny jedním spustitelným souborem, který obsahuje moduly pro různé funkce (přístup k souborovému systému, k zařízením ...). Problémem této architektury je fakt, že chyba v jednom modulu může zablokovat celý systém. Modernější monolitické systémy jako Linux nebo FreeBSD mohou některé moduly načítat až v průběhu práce.

Klepněte pro větší obrázek

Operační systém se stará o komunikaci mezi hardwarem, aplikacemi a samozřejmě uživatelem

Tzv. mikrojádra obsahují velmi jednoduchou vrstvu pro přístup k hardwaru a sadu primitivních volání služeb operačního systému, například pro správu vláken nebo adresových prostorů v paměti. Důležité je oddělení jednotlivých modulů od vlastního operačního systému. Například proces pro vstupně výstupní operace může být nasazen jako služba běžící nad mikrojádrem. V případě chyby může být podobná služba snadno restartována bez nutnosti opětovného spuštění celého systému. Mikrojádro používají například BeOS, Mach použitý v Mac OS X, GNU Hurd nebo QNX.

MS Windows obsahují tzv. hybridní jádro. To je tvořeno běžným mikrojádrem, které však obsahuje některé prvky, které pro mikrojádro nejsou nezbytně nutné. Tyto prvky tak mohou být spouštěny mnohem rychleji, než pokud by běžely v prostoru nad mikrojádrem.

Zcela odlišným typem jsou vertikálně členěné operační systémy, obsahující jádro nazývané exokernel. Nejníže položené vrstvy komunikují s hardwarovým vybavením, každá další vrstva poskytuje abstraktnější virtuální stroj. Jádra takových operačních systémů jsou velmi malá. Jejich úkolem je poskytnout aplikaci na vyžádání specifickou část paměti, disku atp. Příkladem může být systém Nemesis vyvíjený na několika univerzitách nebo Multics.

V závislosti na počtu úloh, které mohou operační systémy vykonávat, hovoříme o různých kategoriích: multiprogramming je jedna ze starších myšlenek, pocházející ze začátku šedesátých let. Pracuje s tím, že do paměti je zavedeno několik programů. První z nich je spuštěn a v okamžiku, kdy potřebuje využít služby druhého programu, je zastaven a provádí se druhý program. Kooperativní multitasking, který používaly šestnáctibitové verze Windows a starší Mac OS, umožňuje spuštění úlohy, která na definovaném místě přenechá výpočetní čas jiné úloze. Vylepšením této metody, která mohla vést k neefektivnímu čerpání systémových zdrojů, je preemptivní multitasking. Stručně řečeno, systém sám přepíná mezi jednotlivými aplikacemi a každé přiděluje určitý čas procesoru v milisekundách.

Pokud bychom operační systémy rozdělili podle požadavků na jejich odezvu, dostaneme tři skupiny. Tou první je dávkový systém, ve kterém se úlohy zadávají jako po sobě jdoucí příkazy a uživatel musí čekat, dokud není splněna celá úloha. Tento způsob se používá u velkých superpočítačů. Další skupinou jsou interaktivní operační systémy, které svým uživatelům dovolují reagovat na úlohy. S interaktivním systémem zřejmě pracujete i vy. Tedy pokud používáte Windows, Linux nebo podobné systémy. Třetí skupinou jsou operační systémy reálného času. Používají se především v řídicích počítačích, kdy jsou přísné požadavky na čas odpovědi. Zástupcem takových systémů je například QNX.

Rozhraní a vrstvy systému

Nedílnou součástí operačních systémů je vrstva, která zprostředkovává komunikaci mezi hardwarovým a softwarovým vybavením počítače. Nazývá se hardware abstraction layer, zkráceně HAL. Aplikace nemusejí přistupovat přímo k hardwaru, ale využívají právě zprostředkující vrstvy HAL. Ta jim umožňuje být až na výjimky nezávislými na hardwarových částech systému a komunikovat s ním jednotným jazykem vyšší úrovně.

Operační systémy poskytují také další vrstvu, jíž je API, aplikační rozhraní. To umožňuje aplikacím pracovat na různých instalacích operačního systému podobně. Různé operační systémy mají různá API. Proto například nejsou programy přenositelné mezi Windows a Linuxem. API nemusí být jen záležitostí operačního systému, je to prostě sada pravidel, kterými daná aplikace komunikuje s ostatními. V Linuxu například máme API pro grafická prostředí KDE nebo Gnome.

Diskuze (16) Další článek: Autor viru Blaster byl odsouzen

Témata článku: Multitasking, Různé systémy, Virtuální procesor, Běžná komunikace, Boot, Typický zástupce, Různé kategorie, Bios, Operační systém, Celá éra, Mach, Podobná odezva, Preempt, Velký superpočítač, Systém, Jádro, Úloha, Halo, Interaktivní systém, Spouštěcí záznam, První spuštění, Starý uživatel


Určitě si přečtěte

Porno insider: Jak virtuální realita vstupuje do filmů pro dospělé

Porno insider: Jak virtuální realita vstupuje do filmů pro dospělé

** Pornografie údajně představuje třetinu internetové obsahu a je technologický tahounem ** Do erotického obsahu postupně zasahuje i virtuální realita ** Kromě vizuálního vjemu se pracuje také na virtuálním uspokojení toho hmatového

Jan Dudek | 28

PrusaLab a FutLab: Praha se dočkala špičkových komunitních dílen pro hackery

PrusaLab a FutLab: Praha se dočkala špičkových komunitních dílen pro hackery

** Nejprve svoji velkou dílnu otevřelo Brno ** Letos se přidala i Praha ** Nabízí malé 3D tiskárny i velké průmyslové stroje

Jakub Čížek | 11

Šéf amerického Red Hatu: Odpojte Brno od internetu a zhroutíme se

Šéf amerického Red Hatu: Odpojte Brno od internetu a zhroutíme se

** V Česku najdete hromadu skvělých vývojářů ** Mnozí z nich přispívají do open-source ** Třeba v brněnském Red Hatu

Jakub Čížek | 51

Našli jsme 22 schopných internetových prohlížečů: Vyberte si, který vám nejvíc sedne

Našli jsme 22 schopných internetových prohlížečů: Vyberte si, který vám nejvíc sedne

** Není jen Chrome, Firefox, Edge či Opera. Na výběr máte mnohem více! ** Internetové prohlížeče se liší funkcemi, zaměřením i designem. Našli jsme 22 použitelných prohlížečů pro Windows ** Vyberte si prohlížeč, který vám bude nejvíce vyhovovat

Karel Kilián | 30

Alan Turing: Genius, který matematicky stvořil počítač

Alan Turing: Genius, který matematicky stvořil počítač

Řešením matematického problému se dostal k modelu teoretického stroje, který nese jeho jméno a je základem logiky univerzálních počítačů.

Pavel Tronner | 56

WALL-E vyfotil Zemi ze vzdálenosti 1 milionů km

WALL-E vyfotil Zemi ze vzdálenosti 1 milionů km

** Malá sonda s přezdívkou WALL-E pořídila fotografii Země a Měsíce ze vzdálenosti 1 milionů km ** CubeSat letí se sondou InSight k Marsu ** InSight přistane na Marsu 26. listopadu

Petr Kubala | 4


Aktuální číslo časopisu Computer

Kdy necháme řídit chytrá auta?

6 Wi-Fi Mesh systémů ve velkém testu

Srovnali jsme 7 sportovních kamer

Znáte pravidla pro létání s drony?