Detail předmětu

Pokročilé operační systémy

POS Ak. rok 2011/2012 letní semestr 5 kreditů

Aktuální akademický rok

Základní pojmy, jádro operačního systému a jeho struktura. Problematika paralelního programování a synchronizace se zaměřením na synchronizaci v jádře operačních systémů. Uváznutí, metody detekce a prevence. Plánovací algoritmy pro jednoprocesorové systémy. Správa paměti, virtuální paměť, stránkování, implementace virtuální paměti. Vstup a výstup, synchronní a asynchronní operace, ovladače, optimalizace diskových operací. Systémy souborů, metody přidělování diskového prostoru, organizace metadat, odolnost vůči výpadku, příklady systémů souborů. Bezpečnost a ochrana dat.

Garant předmětu

Jazyk výuky

česky

Zakončení

zkouška

Rozsah

  • 39 hod. přednášky
  • 13 hod. projekty

Zajišťuje ústav

Získané dovednosti, znalosti a kompetence z předmětu

Schopnost navrhovat paralelní programy s vlákny POSIX 1003.1, znalost použití synchronizačních nástrojů, virtuální paměti a systémů souborů.

Hlubší znalosti funkce výpočetních systémů a systémového programování.

Cíle předmětu

Seznámit s principy a mechanismy na nichž jsou založena jádra moderních operačních systémů.

Doporučené prerekvizity

Požadované prerekvizitní znalosti a dovednosti

Programování v jazyce C v prostředí Unixu, architektura výpočetních systémů, asembler Intel x86, základní principy funkce operačních systémů.

Literatura studijní

  • Bic, L., Shaw, A.C.: Operating Systems Principles, Prentice-Hall, 2003, ISBN 0-13-026611-6
  • Open Sources: Voices from the Open Source Revolution, O'Reilly, 1999, ISBN 1-56592-582-3
  • Love, R.: Linux Kernel Development, Second Edition, Pearson Education, 2005, ISBN 0-672-32720-1

Literatura referenční

  • Andrews, G.R.: Foundations of Multithreaded, Parallel, and Distributed Programming, Addison-Wesley, 2000, ISBN 0-201-35752-6
  • Bic, L., Shaw, A.C.: Operating Systems Principles, Prentice-Hall, 2003, ISBN 0-13-026611-6
  • Nutt, G.J.: Operating Systems: A Modern Perspective, Addison-Wesley, 2000, ISBN 0-201-61251-8
  • Vahalia, U.: Unix Internals: The New Frontiers, Prentice-Hall, 1996, ISBN 0-13-101908-2
  • Schimmel, K.: UNIX Systems for Modern Architectures: Symmetric Multiprocessing and Caching for Kernel Programmers, Addison-Wesley, 1994, ISBN 0-201-63338-8
  • McKusick, M.K., Neville-Neil, G.V.: The Design and Implementation of the FreeBSD Operating System, Addison-Wesley, 2004, ISBN 0-201-70245-2
  • Stevens, W.,R.: Advanced Programming in the UNIX Environment: Second Edition, Addison-Wesley Professional, 2005, 0-201-43307-9

Osnova přednášek

  1. Struktura jádra, rozhraní jádra, volání jádra a přepínání kontextu. Rozhraní systémů Unix, postup standardizace a standardy XPG, POSIX a ISO.
  2. Procesy a vlákna dle standardu POSIX 1003.1, vytváření procesů a vláken, implementace vláken.
  3. Úvod do paralelního programování, synchronizace a prostředky synchronizace. Implementace vzájemného vyloučení atomickými operacemi čtení a zápis.
  4. Metody synchronizace speciálními atomickými instrukcemi v jednoprocesorových a víceprocesorových systémech se sdílenou pamětí, inverze priority.
  5. Synchronizační nástroje a jazykové konstrukce, klasické synchronizační úlohy a příklady řešení.
  6. Plánování procesoru, strategie a implementace, plánovací algoritmy pro jednoprocesorové systémy.
  7. Přidělování prostředků, uváznutí, detekce uváznutí a vyhnutí se uváznutí pro SR a CR prostředky.
  8. Správa paměti, organizace paměti, stránkování, tabulka stránek a TLB.
  9. Virtuální paměť, stránkovací algoritmus, nahrazovací algoritmy pro pevný a proměnný počet rámců.
  10. Implemetace virtuální paměti a problematika použití virtuální paměti - zamykání stránek, sdílení stránek, dynamické knihovny, virtualizace souborů, paměťové nároky jádra.
  11. Vstup a výstup, ovladače, synchronní a asynchronní V/V, optimalizace diskových operací.
  12. Systémy souborů, organizace, přidělování diskového prostoru, ochrana, zotavení, systémy souborů Unix, BSD FFS a žurnálové systémy souborů.
  13. Ochrana a bezpečnost, ochrana dat, bezpečnostní rizika.

Průběžná kontrola studia

Hodnocení studia je založeno na bodovacím systému. Pro úspěšné absolvování předmětu je nutno dosáhnout 50 bodů.

Kontrolovaná výuka

Znalosti studentů jsou ověřovány vypracováním projektů a závěrečnou zkouškou. Pro získání bodů ze zkoušky je nutné zkoušku vypracovat tak, aby byla hodnocena nejméně 20 bodů. V opačném případě bude zkouška hodnocena 0 body.

Nahoru