Předmět: Základy operačních systémů

« Zpět
Název předmětu Základy operačních systémů
Kód předmětu KIV/ZOS
Organizační forma výuky Přednáška + Cvičení
Úroveň předmětu Bakalářský
Rok studia 3
Semestr Zimní
Počet ECTS kreditů 6
Vyučovací jazyk Čeština
Statut předmětu Povinný
Způsob výuky Kontaktní
Studijní praxe Nejedná se o pracovní stáž
Doporučené volitelné součásti programu Není
Vyučující
  • Vystyd Václav, Ing.
  • Hosek Milan, doc. Ing. Ph.D.
  • Velímský Zdeněk, Ing. Ph.D.
  • Mrázek Jan, Ing.
Obsah předmětu
1. Úvod. Historie OS, rozdělení OS, architektura a komponenty OS 2. Proces jako abstrakce. Implementace procesu. Konstrukce pro vytváření procesů. 3. Problém kritické sekce. Spin-lock. Semafory. Kooperace procesů. 4. Implementace semaforů. Monitory a jejich implementace. 5. Zprávy, RPC. Klasické problémy meziprocesové komunikace: Problém večeřících filosofů. 6. Plánování procesů - obecně, dávkové systémy. 7. Plánování procesů v interaktivních systémech. Uvíznutí (deadlock). 8. Uvíznutí: detekce a zotavení, dynamické zabránění, prevence. Správa hlavní paměti, základní mechanismy. 9. Správa hlavní paměti - virtuální paměť. 10.Vstupy a výstupy. 11.Systémy souborů. 12.Bezpečnost v OS. 13.Případová studie: UNIX (Linux), MS Windows (7, Vista, XP).

Studijní aktivity a metody výuky
Přednáška s diskusí, Seminární výuka, Samostatná práce studentů, Cvičení
  • Projekt individuální [40] - 40 hodin za semestr
  • Kontaktní výuka - 65 hodin za semestr
  • Příprava na dílčí test [2-10] - 15 hodin za semestr
  • Příprava na zkoušku [10-60] - 36 hodin za semestr
Předpoklady
Odborné znalosti
použít základy programování aplikací v programovacím jazyce C nebo Java
orientovat se v základních pojmech při tvorbě programového vybavení (program, proces, soubor, vlákno)
používat základní datové struktury (fronta, zásobník, hashovací tabulka)
charakterizovat základní komponenty a architektury výpočetního systému
Odborné dovednosti
ovládat operační systém MS Windows nebo GNU/Linux
použít základní systémové nástroje pro správu a informaci o procesech a sytémových prostředcích
vytvořit aplikaci ve vybraném programovacím jazyce a testovat její běh
detekovat základní problémy při běhu softwaru
Obecné způsobilosti
bc. studium: efektivně využívá různé strategie učení k získání a zpracování poznatků a informací, hledá a rozvíjí účinné postupy ve svém učení,
bc. studium: kriticky přistupuje ke zdrojům informací, informace tvořivě zpracovává a využívá při svém studiu a praxi,
bc. studium: uplatňuje při řešení problémů vhodné metody a dříve získané vědomosti a dovednosti, kromě analytického a kritického myšlení využívá i myšlení tvořivé s použitím představivosti a intuice,
bc. studium: je otevřený k využití různých postupů při řešení problémů, nahlíží problém z různých stran,
bc. studium: zvažuje možné klady a zápory jednotlivých variant řešení, včetně posouzení jejich rizik a důsledků,
bc. studium: efektivně využívá moderní informační technologie,
bc. studium: prezentuje vhodným způsobem svou práci i sám sebe před známým i neznámým publikem,
bc. studium: rozumí sdělením různého typu v různých komunikačních situacích, správně interpretuje přijímaná sdělení a věcně argumentuje; v nejasných nebo sporných komunikačních situacích pomáhá dosáhnout porozumění,
bc. studium: své učení a pracovní činnost si sám plánuje a organizuje,
bc. studium: rozpozná problém, objasní jeho podstatu, rozčlení ho na části,
bc. studium: vytváří hypotézy, navrhuje postupné kroky, zvažuje využití různých postupů při řešení problému nebo ověřování hypotézy,
bc. studium: efektivně využívá dostupné prostředky komunikace, verbální i neverbální, včetně symbolických a grafických vyjádření informací různého typu,
bc. studium: používá s porozuměním odborný jazyk a symbolická a grafická vyjádření informací různého typu,
bc. studium: vyjadřuje se v mluvených i psaných projevech jasně, srozumitelně a přiměřeně tomu, komu, co a jak chce sdělit, s jakým záměrem a v jaké situaci komunikuje,
Výsledky učení
Odborné znalosti
analyzovat základní požadavky kladené na operační systém
popsat základní služby poskytované operačním systémem
popsat základní moduly operačního systému
popsat a ilustrovat základní problémy časového souběhu a kritických sekcí paralelních procesů a vláken
vysvětlit základní mechanismy ochrany používané v operačních systémech
srovnat různé přístupy k implementaci služeb operačního systému
Odborné dovednosti
vytvořit jednoduchou multiprocesní nebo multivláknovou aplikaci
navrhnout efektivní metodu ošetření synchronizace a ošetření kritické sekce v kódu programu
používat základní příkazy a vytvářet příkazové skripty pod OS GNU/ Linux
analyzovat a graficky znázornit průběh zpracování multiprocesní aplikace
určit vhodný typ RAID úložiště dle konkrétních potřeb uložení dat
Obecné způsobilosti
bc. studium: samostatně a odpovědně se na základě rámcového zadání rozhodují v souvislostech jen částečně známých,
bc. studium: do jejich řešení zahrnují úvahu o jejich etickém rozměru,
bc. studium: srozumitelně a přesvědčivě sdělují odborníkům i laikům informace o povaze odborných problémů a vlastním názoru na jejich řešení,
bc. studium: samostatně získávají další odborné znalosti, dovednosti a způsobilosti na základě především praktické zkušenosti a jejího vyhodnocení, ale také samostatným studiem teoretických poznatků oboru,
Vyučovací metody
Odborné znalosti
Přednáška s diskusí,
Samostatná práce studentů,
Seminární výuka (badatelské metody),
Odborné dovednosti
Cvičení (praktické činnosti),
Obecné způsobilosti
Přednáška založená na výkladu,
Cvičení (praktické činnosti),
Seminární výuka (badatelské metody),
Hodnotící metody
Odborné znalosti
Písemná zkouška,
Odborné dovednosti
Seminární práce,
Obecné způsobilosti
Písemná zkouška,
Seminární práce,
Doporučená literatura
  • Dráb, M. Jádro systému Windows, Kompletní průvodce programátora. Computer Press, 2011. ISBN 9788025127315.
  • Snyder, G.; Nemeth, E. Linux, Kompletní příručka administrátora. Computer Press, 2008. ISBN 9788025124109.
  • Stallings, W. Operating systems: Internals and Design Principles. Limited. Pearson Educetion, 2011. ISBN 9780132309981.
  • Stones, R.; Matthew, N. Linux, Začínáme programovat. Computer Press, 2008. ISBN 9788025119334.
  • Tatenbaum, A. Modern Operating system. Pearson Prentice Hall, 2008. ISBN 9780136006633.
  • Tatenbaum, A.; Woodhull, A. Operating systems: design and implementation. Pearson Education International, 2009. ISBN 9780135053768.


Studijní plány, ve kterých se předmět nachází
Fakulta Studijní plán (Verze) Kategorie studijního oboru/specializace Doporučený ročník Doporučený semestr