Detail předmětu

Operační systémy

FEKT-BPC-OSYAk. rok: 2021/2022

Pojem operačního systému (OS) jako součásti programového vybavení. 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í. Přepínání kontextu, multitasking. Základní principy
implementace OS UNIX. Systémy ovládání souborů. Správa procesů, virtuální paměť. Základní koncepce síťových propojení, Internet, TCP/IP. Správa a bezpečnost OS.

Jazyk výuky

čeština

Počet kreditů

5

Výsledky učení předmětu

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.

Prerekvizity

Jsou požadovány znalosti na úrovni středoškolského studia.

Plánované vzdělávací činnosti a výukové metody

Metody vyučování závisejí na způsobu výuky a jsou popsány článkem 7 Studijního a zkušebního řádu VUT.

Způsob a kritéria hodnocení

Podmínky pro úspěšné ukončení předmětu stanoví každoročně aktualizovaná vyhláška garanta předmětu.

Osnovy výuky

Úvod. Vývoj počítačů a OS. Požadavky na OS, klasifikace OS, standardy. Základní pojmy a obecná struktura OS.
2. 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.
3. 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.
4. 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.
5. Standardní utility UNIXu.
6. Systém souborů. Fyzická a logická struktura disku. Typy souborů, i-uzel, uložení dat souboru na disku.
7. Přístupová práva k souborům, uživatelé a skupiny, atributy suid a sgid, typická struktura adresářů systému UNIX.
8. 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.
9. Správa procesů. Zavedení systému, proces init. Volání fork, exec, exit, wait. Stavy procesu, plánovač.
10. Správa paměti. Adresové prostory, překlad adres, stránkování.
11. Virtualizace paměti.
12. Vzájemné vyloučení, semafory a další synchronizační prostředky.
13. Typické synchronizační úlohy, uváznutí (deadlock), stárnutí.

Učební cíle

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.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

Vymezení kontrolované výuky a způsob jejího provádění stanoví každoročně aktualizovaná vyhláška garanta předmětu.

Základní literatura

Bach, M.J.: Principy operačního systému UNIX, 1. vydání. Softwarové Aplikace a Systémy, Praha 1993.
Glass, G., Ables, R.K.: Unix For Programmers And Users, Second Edition. Prentice Hall, 1999.
Kerninghan, B.W., Pike, R.: Programové prostředí operačního systému UNIX, Science, Veletiny 1996.
Milenkovic, M.: Operating Systems: Concepts and Design, Second Edition. McGraw-Hill, New York, 1992.
Skočovský, L.: Principy a problémy operačního systému UNIX, 1. vydání. Science, Veletiny 1993.

Zařazení předmětu ve studijních plánech

  • Program BPC-MET bakalářský 0 ročník, letní semestr, volitelný
  • Program BPC-SEE bakalářský 0 ročník, letní semestr, volitelný
  • Program BPC-IBE bakalářský 0 ročník, letní semestr, volitelný

Typ (způsob) výuky

 

Přednáška

39 hod., nepovinná

Vyučující / Lektor

Osnova

Ú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.

Projekt

13 hod., nepovinná

Vyučující / Lektor

Osnova

Tři dílčí domácí úlohy zaměřené na tvorbu skriptů s využitím shellu a standardních utilit v prostředí operačního systému UNIX.