Detail předmětu
Operační systémy
IOS Ak. rok 2024/2025 letní semestr 5 kreditů
Pojem operačního systému (OS) jako součásti programového vybavení. Architektura OS, klasifikace OS. Přehled operačních systémů. Jádro OS UNIX, jeho struktura, textové a grafické uživatelské rozhraní, příkazové jazyky. Systémy ovládání souborů, základní principy implementace vstup/výstupních operací. Správa procesů, přepínání kontextu, plánování, meziprocesová komunikace. Správa paměti, stránkování, virtuální paměť. Synchronizace procesů, semafory a další synchronizační prostředky, uváznutí, stárnutí.
Garant předmětu
Koordinátor předmětu
Jazyk výuky
Zakončení
Rozsah
- 39 hod. přednášky
- 13 hod. projekty
Bodové hodnocení
- 60 bodů závěrečná zkouška
- 10 bodů půlsemestrální test
- 30 bodů projekty
Zajišťuje ústav
Přednášející
Lengál Ondřej, Ing., Ph.D. (UITS)
Rogalewicz Adam, doc. Mgr., Ph.D. (UITS)
Smrčka Aleš, Ing., Ph.D. (UITS)
Cvičící
Kozák David, Ing. (UITS)
Lengál Ondřej, Ing., Ph.D. (UITS)
Rogalewicz Adam, doc. Mgr., Ph.D. (UITS)
Vašíček Ondřej, Ing. (UITS)
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.
Studenti znají základní principy operačních systémů (a zejména OS UNIX) a chápou jejich vliv 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.
Doporučené prerekvizity
- Základy programování (IZP)
- Úvod do softwarového inženýrství (IUS)
Požadované prerekvizitní znalosti a dovednosti
Základy 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. Standardní utility UNIXu.
- 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ů. Pojem procesu, jeho stavy a representace v systému. Zavedení systému, proces init. Volání fork, exec, exit, wait.
- Základní algoritmy plánování procesů.
- Vzájemné vyloučení, semafory a další synchronizační prostředky.
- Typické synchronizační úlohy. Probém uváznutí (deadlock) a jeho řešení.
- Správa paměti. Adresové prostory, překlad adres, stránkování.
- Virtualizace paměti.
Osnova ostatní - projekty, práce
- Tvorba skriptů s využitím shellu a standardních utilit v prostředí operačního systému UNIX.
- Synchronizace procesů v prostředí UNIX s využitím jazyka C.
Průběžná kontrola studia
- Ohodnocení dvou domácích úloh vypracovaných samostatně studenty (max 30 bodů).
- Ohodnocení půlsemestrální zkoušky (max 10 bodů).
- Vypracování dvou domácích úloh, polosemestrální zkouška, kombinovaná závěrečná zkouška (povinná písemná část, ústní dozkoušení dle potřeby).
- Pro získání bodů ze zkoušky je nutné zkoušku vypracovat tak, aby byla hodnocena nejméně 27 body. V opačném případě bude zkouška hodnocena 0 body.
Způsob kontaktu s vyučujícím
- Primární kontakt emailem, pomocí kterého je možno si domluvit individuální konzultaci s přednášejícími či přidělenými cvičícími (jsou přiděleni v průběhu semestru).
- Možnost diskuse přes webová fóra předmětu (zřízena během semestru).
Rozvrh
Den | Typ | Týdny | Místn. | Od | Do | Kapacita | PSK | Skup | Info |
---|---|---|---|---|---|---|---|---|---|
Čt | přednáška | výuky | E104 E112 | 09:00 | 11:50 | 294 | 1BIB 2BIA 2BIB | 30 - 49 xx | Rogalewicz |
Čt | přednáška | 1., 2., 3., 4., 5., 6., 7., 9., 10., 11., 12., 13. výuky | E105 | 09:00 | 11:50 | 294 | 1BIB 2BIA 2BIB | 30 - 49 xx | Rogalewicz |
Čt | přednáška | 1., 2., 3., 4., 5., 6., 7., 8., 11., 12., 13. výuky | D0206 | 14:00 | 16:50 | 560 | 1BIA 2BIA 2BIB | 10 - 29 xx | Rogalewicz |
Čt | přednáška | 1., 2., 3., 4., 5., 6., 7., 11., 12., 13. výuky | D0207 D105 | 14:00 | 16:50 | 560 | 1BIA 2BIA 2BIB | 10 - 29 xx | Rogalewicz |
Čt | přednáška | 2025-04-10 | D0206 D0207 D105 | 14:00 | 16:50 | 560 | 1BIA 2BIA 2BIB | 10 - 29 xx | Lengál |
Čt | přednáška | 2025-04-17 | D0206 D0207 D105 | 14:00 | 16:50 | 560 | 1BIA 2BIA 2BIB | 10 - 29 xx | Smrčka |
Zařazení předmětu ve studijních plánech
- Program BIT, 1. ročník, povinný
- Program BIT (anglicky), 1. ročník, povinný