Detail předmětu
Operační systémy
IOS Ak. rok 2004/2005 letní semestr 5 kreditů
Pojem operačního systému (OS) jako součásti výpočetního systému, úlohy a cíle OS, architektura OS, klasifikace OS. Přehled operačních systémů. UNIX: Jádro OS, jeho struktura, volání služeb jádra. Uživatelské rozhraní OS, příkazový jazyk, textové a grafické rozhraní. Systémy ovládání souborů -- fyzický a logický disk, fragmentace, popis rozložení dat souboru na disku. Přepínání kontextu, multitasking, plánování procesů. Správa paměti, princip stránkování paměti, virtuální paměť. Synchronizace procesů, kritická sekce, semafory. Základní koncepce síťových propojení, Internet, TCP/IP. Správa a bezpečnost OS.
Garant předmětu
Jazyk výuky
Zakončení
Rozsah
- 39 hod. přednášky
- 13 hod. projekty
Zajišťuje ústav
Získané dovednosti, znalosti a kompetence z předmětu
Studenti znají základní principy operačních systémů (a zejména OS UNIX) zahrnující strukturu jádra a způsoby komunikace s ním, systémy ovládání souborů, správu paměti, plánování procesů, základní problémy spojené se synchornizací paralelních procesů, základní koncepci síťových podsystémů a základy bezpečnosti. Studenti chápou vliv operačních systémů na chod komplexních výpočetních systémů. Studenti jsou schopni využít skriptů pro řešení různých úloh v prostředí OS UNIX.
Hlubší porozumění pozadí činnosti výpočetních systémů a seznámení se s užitečností automatizace různých činností pomocí skriptovacích jazyků.
Cíle předmětu
Cílem je seznámit studenty s principy operačních systémů obecně a dále se základy operačního systému Unix.
Doporučené prerekvizity
- Úvod do softwarového inženýrství (IUS)
- Základy programování (IZP)
Požadované prerekvizitní znalosti a dovednosti
Základní znalosti algoritmizace a programování v jazyce C.
Literatura referenční
- Silberschatz, A., Galvin, P.B., Gagne, G.: Operating System Concepts, 10. vydání, John Wiley & Sons, 2018.
Osnova přednášek
- Úvod. Vývoj počítačů a OS. Požadavky na OS, klasifikace OS, standardy. Základní pojmy a obecná struktura OS.
- Operační systém UNIX. Historie a základní vývojové větve. Principy a struktura systému. Struktura jádra, rozhraní a formy komunikace s jádrem.
- Interpret příkazů (shell) v UNIXu. Základní příkazy, programy, skripty. Speciální symboly. Přesměrování vstupu a výstupu, roury, procesy na pozadí, subshell. Proměnné, řídicí struktury.
- Základy programování v Unixu. Jazyky, překladače, principy sestavování programu, dynamicky sestavované knihovny. Základní principy grafického uživatelského rozhraní X-Window.
- Systém souborů. Fyzická a logická struktura disku. Typy souborů, i-uzel, uložení dat souboru na disku.
- Přístupová práva k souborům, uživatelé a skupiny, atributy suid a sgid, typická struktura adresářů systému UNIX.
- Vstup a výstup. Odpovídající služby jádra. Datové struktury a algoritmy používané jádrem pro podporu vstupu a výstupu.
- Správa procesů. Zavedení systému, proces init. Volání fork, exec, exit, wait. Stavy procesu, plánovač.
- Správa paměti. Adresové prostory, překlad adres, stránkování.
- Základy teorie. Vzájemné vyloučení, uváznutí (deadlock), synchronizace a komunikace procesů.
- Počítačové sítě, Internet, základní protokoly a služby.
- Přehled a srovnání různých OS. Nové směry ve vývoji OS, mikrojádra, multimédia, apod.
- Bezpečnost OS. Přehled problémů, základy zabezpečení. Třídy bezpečnosti.
Průběžná kontrola studia
Získání alespoň 50% možného bodového zisku z domácích úkolů a půlsemestrální zkoušky.
Kontrolovaná výuka
Výuka není kontrolována.