Architektůra OS
Architektůry se liší podle úrovně spolupráce jednotlivých rutin OS.
1. S těsným propojením rutin (monolitické)
- Jsou zastaralé a vývoj vedl k jejich odstranění.
- Jádro OS je tvořeno souborem paralerních rutin (R1 - R6).
- a je omezeno dvěma rozhraními - H (Rozhraní vůči hardwaru) a K (Rozhraní Jádra).
- rozhraní jádra využívají jak systémové, tak běžné procesy.
- je často provázeno tzv. změnou úrovně privilegovanosti procesoru.
- pokud proces vykonává kód aplikace, běží v takzvaném uživatelském (neprivilegovaném režimu).
- v režimu jádra (privilegovaném režimu) se vykonávají pouze rutiny jádra, přístup k celé OP.
- proces mění úroveň privilegovanosti pouze při vzniku přerušení (uzivatelske -> jadro).
- příklad: MS DOS
![](/img/opsimg/monolitickeOS.png)
Monolitické OS
2. Spolupráce rutin omezena hierarchicky (hierarchické->vrstevnaté)
- v dnešní době neexistuje OS, který by neobsahoval rysy Hierarchické architektury
- Typickým → UNIX
- zde jsou rutiny uspořádány do vrstev, které postupně obalují hardware a nabízejí vyšším vrstvám které postupně obalují hardware a nabízejí vyšším vrstvám pevně definovaná rozhraní
- systém vyžaduje, aby rutiny přímo volaly pouze vrstvy bezprostředně nižší
- bohužel nelze zcela dodržet → setkáváme se i s přímým voláním hlouběji zanořených vrstev
- hal:
- podobné API
- uvnitř OS vytvořena mezivrstva, která usnadňuje programování ovladačů jednotlivých zařízení
- API rozhraní pro volání systémových služeb (vrstva s jednoduchými funkcemi pro programátory)
- dispečer systémových služeb:řídí provoz
![](/img/opsimg/hierarchickeOS.png)
hierarchickeOS
3. Plně distribuované (klient-server)
- Zde rutiny netvoří jediný celek
- IPC =Prostředek pro komunikaci mezi procesy
- Distribuovaný přístup (pozornost na několik objektů současně) → snižuje výkonnost systému
- Hlavní změnou oproti Hierarchickému modelu je vyčlenění "zbytečných" rutin z Jádra do specializovaných systémových procesů (Serverů)
- V Jádře zůstávají pouze zcela nezbytné rutiny pro virtualizaci paměti, přepínání a komunikaci procesů, respektive pro přístup k dalším HW prostředkům
- Výsledné redukované Jádro (označeno Mikrojádro) nabízí ostatním procesům pouze základní funkce, vše ostatní zajišťují servery prostřednictvím meziprocesorové komunikace (rychlá a efektivní komunikace je klíčová u této architektury)
- Počet serverů je formálně neomezený, mezi nejdůležitější patří - servery souborových systémů, servery bezpečnostní, servery nabízející API( nejdůležitější ) s nimi komunikuje při volání služeb OS
![](/img/opsimg/klientserverOS.png)
Klient server OS