Hlavní stránka | Seznam oborů/specializací | Seznam všech skupin předmětů | Seznam všech předmětů | Seznam rolí                Návod

Předmět je základní jednotka výuky, jejímž prostřednictvím si student osvojí ucelenou část souboru znalostí a dovedností, potřebnou pro zvládnutí studijního oboru/specializace. Za věcný obsah předmětu zodpovídá garant předmětu. Časovou náročnost předmětu zhruba vyjadřuje atribut předmětu rozsah kontaktní výuky. Například rozsah = 2+2  značí, že předmět bude mít týdně dvě hodiny přednášek a dvě hodiny cvičení týdně. Na závěr semestru musí vyučující provést vyhodnocení, nakolik si ten který student osvojil poznatky a dovednosti, kterých měl během výuky nabýt. Jakým způsobem toto hodnocení vyučující provedou určuje atribut způsob zakončení. U předmětu lze definovat, že předmět je zakončen pouze zápočtem(Z), klasifikovaným zápočtem(KZ), pouze zkouškou(ZK), nebo zápočtem a zkouškou(Z,ZK). Náročnost úspěšného absolvování předmětu je vyjádřena ECTS kreditními body. Výuka předmětu probíhá během semestru. Opakovaně se předmět vyučuje vždy v zimním(Z), nebo v letním(L) semestru každého akademického roku. Výjimečně může předmět být nabízen studentům v obou semestrech(Z,L). Za organizační zajištění výuky zodpovídá přiřazená katedra, která zejména vytvoří časový rozvrh předmětu a zajistí pro předmět vyučující. Někteří přednáší a zkouší, jiní vedou cvičení a udělují zápočty.
Obsahová náplň a další organizační informace, týkající se předmětu je popsána pomocí různých popisných textů(anotace, týdenní osnova, literatura, apod.)
$DODATEK_POPIS
NI-OSY Operační systémy a systémové programování Rozsah kontaktní výuky: 2P+1C
Vyučující: Zemánek P. Způsob zakončení: Z,ZK
Zodpovědná katedra: 18104 ECTS Kredity: 5 Semestr: Z

Anotace:
Předmět se zabývá problematikou systémového programování v operačních systémech unixového typu se zaměřením na vývoj jádra OS. Studenti se seznámí s architekturou a datovými strukturami jádra OS, s programováním algoritmů pro správu procesů a správu hlavní paměti, s vnitřní architekturou moderních systémů souborů, s implementacemi metod ovládání periferních zařízení a síťové komunikace, s metodami bootování jádra a s technikami ladění jádra pomocí dynamické instrumentace. Získají znalosti o postupech při vývoji a modifikacích jádra OS a zajištění přenositelnosti jádra. Seznámí se se specifikami implementace jádra OS pro vestavné či systémy reálného času. Teoretické a obecné principy budou demonstrovány primárně na jádru Linuxu. Cvičení budou zaměřena na vývoj modulů jádra OS Linux.

Osnovy přednášek:
1) Architektura jádra operačního systému a nástroje pro vývoj jádra
2) Systémová volání a jejich implementace
3) Moduly jádra pro správu procesů a vláken
4) Přerušení, časovače a správa reálného času
5) Synchronizačni mechanismy v jádře, symetrický multiprocessing
6) Adresní prostor procesu, memory management
7) Implementace moderních systémů souborů, virtualizace diskového prostoru
8) Ladění jádra a přenositelnost jádra
9) Implementace sítových služeb v jádře
10) Subsytémy jádra závislé na HW architektuře, zavádění jádra
11) Implementace virtualizace (kvm)
12) Jádro OS pro vestavné systémy

Osnovy cvičení:
Obsahem cvičení bude práce na semestrálním projektu, jehož cílem bude vývoj vybraného modulu jádra, schopného fungovat v reálném prostředí Linuxu.

Literatura:
1) Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau: Operating Systems: Three Easy Pieces ? Arpaci-Dusseau Books August, 2018 (Version 1.00) or July, 2019 (Version 1.01) http://www.ostep.org
2) Love, R.: Linux Kernel Development (3rd edition). Pearson Education 2010. ISBN: 978-0-672-32946-3
3) Wang, K.C.: Embedded and Real-Time Operating Systems. Springer 2017. ISBN 978-3-319-51516-8

Požadavky:

Tento předmět obsahově navazuje na bakalářský předmět BI-OSY Operační systémy.

Předmět je zahrnut do těchto studijních plánů:
Plán Obor Role Dop. semestr
NI-ZI.2020 Znalostní inženýrství V 3
NI-SP.2020 Systémové programování PS 3
NI-PSS.2020 Počítačové systémy a sítě V 3
NI-TI.2023 Teoretická informatika V 3
NI-TI.2020 Teoretická informatika V 3
NI-SPOL.2020 Nespecifikovaný/á obor/specializace studia - Unspecified Branch/Specialisation of Study VO 3
NI-WI.2020 Webové inženýrství V 3
NI-MI.2020 Manažerská informatika V 3
NIE-DBE.2023 Digital Business Engineering VO 3
NI-TI.2018 Teoretická informatika V 3
NI-PB.2020 Počítačová bezpečnost V 3
NI-SI.2020 Softwarové inženýrství V 3
NI-SPOL.2020 Nespecifikovaný/á obor/specializace studia - Unspecified Branch/Specialisation of Study VO 3
NI-NPVS.2020 Návrh a programování vestavných systémů V 3
NI-SP.2023 Systémové programování PS 3


Stránka vytvořena 23. 4. 2024, semestry: L/2023-4, Z/2022-3, L/2019-20, L/2021-2, Z/2024-5, L/2020-1, Z/2021-2, Z/2023-4, Z/2020-1, Z/2019-20, L/2022-3, připomínky k informační náplni zasílejte správci studijních plánů Návrh a realizace: J. Novák, I. Halaška