OPERAČNÍ SYSTÉMY
Definice: Jedná se o základní softwarové vybavení počítače. Tvoří rozhraní mezi aplikačními (uživatelskými) programy a hardwarem. Je to soubor programů, které řídí činnost technického vybavení počítače a umožňují a usnadňují činnost aplikací. Hlavním úkolem OS je zprostředkovat vazbu mezi technickým vybavením počítače a aplikacemi. OS poskytuje aplikacím služby a aplikace voláním těchto služeb ovládají technické vybavení počítače.
Funkce OS: Organizuje přístup a využívání zdrojů počítače (čas procesoru, přístup k datům na discích, přístup do paměti). Fyzicky zajišťuje vstup a výstup dat podle požadavků ostatních programů. Komunikuje s uživatelem a na základě jeho pokynů vykonává požadované akce. Reaguje na chybové stavy programů a mylné požadavky uživatelů tak, aby tyto chyby nezpůsobily zásadní destrukci systému nebo poškození dat. Spravuje komunikaci s periferiemi. Definuje nastavení klávesnice, citlivost myši a dalších zařízení. Eviduje využívání systémových zdrojů apod.
Struktura OS: Operační systém je zpravidla tvořen tzv. jádrem (kernel), ovladači V/V zařízení (driver), příkazovým procesorem (shell) a podpůrnými systémovými programy.
Jádro - po zavedení do paměti řídí činnost počítače, poskytuje procesům služby a řeší správu prostředků a správu procesů. Dělí se na dvě podstatné části: 1. Správa procesů - správa procesů (prakticky není u jednoduchých OS) řeší problematiku aktivování a deaktivování procesů podle jejich priority resp. požadavků na prostředky. 2. Správa prostředků - zajišťuje činnost V/V zařízení, přiděluje paměť, případně procesory. Velmi důležitou částí správy prostředků je: správa souborů - způsob ukládání souborů a přístupu k nim. Moderní OS zajišťují jednotný pohled na soubory a zařízení. Zařízení jsou považovány za soubory se speciálním jménem.
Ovladač - zvláštní (pod)program pro ovládání konkrétního zařízení standardním způsobem. Použití strategie s ovladači umožňuje snadnou konfigurovatelnost technického vybavení. Příkazový procesor - program, který umožňuje uživatelům zadávat příkazy ve speciálním, obvykle jednoduchém jazyce. Podpůrné programy - do této kategorie jsou mnohdy zahrnovány i překladače (jazyk C v OS UNIX) a sestavující programy. Stojí na stejném místě jako aplikační programy.
Důležité pojmy: Proces Grafické rozhraní Vlákno Multitasking Bootování Plug & Play
1) Proces spuštěný a zpracovávaný počítačový program je umístěn v operační paměti počítače v podobě strojových instrukcí, které vykonává procesor v určitém sledu obsahuje nejen kód vykonávaného programu, ale i dynamicky měnící se data, které se zpracovávají jeden program může v počítači běžet jako více procesů s různými daty (např. vícekrát spuštěný webový prohlížeč zobrazující různé stránky) správu procesů vykonává operační systém, který zajišťuje jejich oddělený běh, přiděluje jim systémové prostředky počítače a umožňuje uživateli procesy spravovat (spouštět, ukončovat atp.).
Stavy procesů: Nový proces – new proces je vytvářen operačním systémem – systém plní operační paměť instrukcemi procesu, připravuje si popis procesu a jeho potřeb ve svých strukturách. Stav běhu – run procesor vykonává instrukce procesu. Stav čekání – wait procesor nevykonává instrukce procesu, proces čeká na uskutečnění nějaké události (např. dokončení operace s I/O zařízením). Stav připravenosti – ready proces je v paměti a čeká na spuštění. Ukončení – terminated běh procesu byl ukončen.
2) Grafické rozhraní rozhraní, které umožňuje ovládat počítač pomocí interaktivních grafických ovládacích prvků. Na monitoru počítače jsou zobrazena okna, ve kterých programy zobrazují svůj výstup. Uživatel používá klávesnici, myš a grafické vstupní prvky jako jsou menu, ikony, tlačítka, posuvníky, formuláře a podobně. První grafické rozhraní (WIMP) bylo vyvinuto v roce 1973 ve vývojových laboratořích společnosti Xerox.
3) Vlákno Vláknem se označuje odlehčený proces, který snižuje režie OS při střídání procesů na procesoru. Proces může dělit na vlákna, která pak pomocí sdílené paměti usnadňují komunikaci - vlákno vlastní paměť nemá, sdílí ji společně s ostatními vlákny běžícími ve stejném procesu. Vlákna tak mohou přistupovat ke stejným datům současně. Z hlediska spravování vláken OS můžeme vlákna rozdělit na: 1. Vlákna na uživatelské úrovni (ULT) - správu vláken provádí tzv. vláknová knihovna na úrovni aplikačního procesu, jádro operačního systému o jejich existenci neví 2. Vlákna na úrovni jádra (KLT) - správa vláken je řízena OS
4) Multitasking Funkce umožňující souběžné zpracování více úloh v jednom okamžiku, tzn. že běží několik procesů současně. Např. budu si prohlížet internetové stránky a pustím si k tomu hudbu. Běh takto dvou spuštěných aplikací je však pouze zdánlivý. Ve skutečnosti procesor běžící procesy rychle střídá a nám vzniká dojem, že běží současně. Přepínání mezi procesy se nazývá změna kontextu.
Kooperativní multitasking Řízení si navzájem předávají jednotlivé procesy. Záleží na každé úloze, jak často svým systémovým voláním umožní předat řízení zpět OS, aby mohlo dojít ke spuštění jiné úlohy. Velkou nevýhodou je, když úloha z důvodu chyby nepředá řízení nazpět. Tím je zastaveno provádění dalších úloh. Preemtivní multitasking Zdroje přiděluje operační systém, havárie jednoho procesu neznamená ukončení práce celého systému. V pravidelných intervalech, které nastanou 100 až 1000 krát do sekundy, dojde k přerušení právě běžící úlohy, aby systém zjistil, jaké další úlohy žádají o přístup na procesor a s jakou prioritou. Podle toho buď dostane přednost úloha jiná nebo se dále pokračuje v úloze právě prováděné.
5) Bootování Zavádění operačního systému do operační paměti RAM po zapnutí počítače. Sekvence úkonů, které se provedou, aby došlo ke správnému spuštění počítač. Patří sem také kontrola funkčnosti součástek počítače, aktivace připojených zařízení a poté dochází k nahrávání části operačního systému do paměti RAM. Pak se kontrola nad počítačem předá tomuto spuštěnému operačnímu systému.
6) Plug & Play umožňuje detekovat nový hardware přidaný do počítače zjednodušuje se tím instalace nových komponent
Typy OS: Jednouživatelské jednoúlohové (single-user single-task) žádné prostředky ochrany souborů a disků, neumožňuje běh více procesů (programů) najednou, například: MS-DOS Jednouživatelské víceúlohové (single-user multi-task) multitasking, možnost paralelního (současného) běhu několika procesů, kooperativní multitasking, preemptivní multitasking, například: Windows 9x, Me, Windows XP Víceuživatelské víceúlohové (multi-user multi-task) možnost zpracovávat požadavky více uživatelů přihlášených do systému, například: Windows NT, Windows 2000, Unix, Linux, Windows XP Systémy s reálným časem (real-time) – zejména pro řízení technologických procesů
Druhy OS: MS-DOS WINDOWS LINUX Mac OS (Macintosh Operating System)
MS-DOS 1981 – firma Microsoft vytvořila první OS pro PC (pro firmu IBM) DOS (diskový operační systém) Textový operační systém (příkazy se zadávaly slovy) Mohl běžet pouze jeden program - každý program měl jiné ovládání, pro práci se soubory různé nadstavby (Norton Commander, M602), vznikly první grafické nadstavby – Windows Napomohl obecnému rozšíření osobních počítačů IBM, pro které byl určen
Windows Operační systémy od společnosti Microsoft. Jeho označení plyne především ze způsobu práce - obsluha spočívá v práci s okny. Po DOSu možnost pracovat ve Windowsech na počítači s několika programy současně, tzn. podporoval multitasking. Další vylepšení, např. swapování (rozšíření operační paměti pomocí pevného disku). Nejdříve Windows běžel jako nástavba DOSu, jako poslední takto fungoval Windows Me, pak už fungoval jako samostatný operační systém.
1985 – Windows 1.0 1987 – Windows 2.0 1990 – Windows 3.0 1992 – Windows 3.1 1992 – Windows 3.1 for Workgroups - podpora sítě peer-to-peer 1993 – Windows 3.11 for Workgroups, sdílení zdrojů, MS Mail 1993 – Windows NT 3.1, verze pro pracovní statice (Workstation) a servery (Server) 1993 – Windows NT 3.5 (vzápětí 3.51) - dlouhá jména souborů 1995 – Windows 95 - výrazná změna v grafickém rozhraní, podpora plug-and-play 1996 – Windows NT 4.0 - řada pro firemní počítače 1998 – Windows 98 - řada pro domácí počítače, podpora USB, DVD přímo v OS 1999 – Windows 98 SE - drobná vylepšení, spolehlivost 2000 – Windows ME - poslední z řady 95 – 98 – ME, nespolehlivé 2000 – Windows 2000 (NT 5.0) - sjednocení „firemní“ a „domácí“ řady 2001 – Windows XP - bezpečnější, vylepšení multimediální stránky, odstranění chyb 2003 – Windows Server 2003 2007 – Windows Vista - výrazné změna grafického prostředí, nové pojetí bezpečnosti 2009 – Windows 7 2012 – Windows 8
Linux Přesněji GNU/Linux je operační systém složený z jádra (autor Linus Torvalds) a základních knihoven a nástrojů, které pocházejí převážně z projektu GNU (založil Richard Stallman). Jedná se o operační systém vycházející z Unixu, přesto však s ním nemá ani jeden řádek společného zdrojového kódu. Podporuje paralelní multitasking a je víceuživatelský. Určený pro nejrůznější druhy počítačů. Jeho hlavní výsadou je, že je zdarma. Navíc jsou každému k dispozici i zdrojové kódy (Open Source). Každý jej tak může libovolně upravovat a dále distribuovat. Musí ovšem opět přiložit zdrojové kódy. Existuje několik druhů Linuxových operačních systémů, říká se jim distribuce. Ty lze volně stáhnout a nainstalovat do počítače nebo je možné si je nejdříve vyzkoušet nabootováním z CD, tzv. Live CD.
Mac OS (Macintosh Operating System) Jedná se o operační systém určený pro počítače Apple Macintosh. Nelze jej nainstalovat běžné PC, je určen výhradně pro hardware od společnosti Apple. Aktuální operační systém nese označení Mac OS X. Jedná se o náhradu Mac OS, kombinace několika různých technologií. Grafické uživatelské rozhraní, které systém využívá, se jmenuje Aqua. Upravenou verzi Mac OS X s názvem iPhone OS využívá mobilní telefon Apple iPhone a multimediální kapesní přehrávač iPod touch.
OS/2 operační systém vyvíjený firmou IBM ve své době průkopnický, nikdy se však příliš neujal Navývoji OS/2 se zpočátku podílel i Microsoft, MS dal ale přednost Windows 3.0 a spolupráce s IBM tak skončila.