|
|
Hlavní nabídka Prohlížení IS/STAG
Nalezené předměty, počet: 1
Stránkování výsledků vyhledávání
Nalezeno 1 záznamů
Export do Xls
Informace o předmětu
KIT / NNOS1
:
Popis předmětu
Pracoviště / Zkratka
|
KIT
/
NNOS1
|
Akademický rok
|
2023/2024
|
Akademický rok
|
2023/2024
|
Název
|
Operační systémy 1
|
Způsob zakončení
|
Zkouška
|
Způsob zakončení
|
Zkouška
|
Akreditováno / Kredity
|
Ano,
6
Kred.
|
Forma zakončení
|
Kombinovaná
|
Forma zakončení
|
Kombinovaná
|
Rozsah hodin
|
Přednáška
2
[HOD/TYD]
Cvičení
3
[HOD/TYD]
|
Zápočet před zkouškou
|
Ano
|
Zápočet před zkouškou
|
Ano
|
Automatické uznávání zápočtu před zkouškou
|
Ne
|
Počítán do průměru
|
ANO
|
Vyučovací jazyk
|
Čeština
|
Obs/max
|
|
|
|
Automatické uznávání zápočtu před zkouškou
|
Ne
|
Letní semestr
|
0 / -
|
0 / -
|
0 / -
|
Počítán do průměru
|
ANO
|
Zimní semestr
|
16 / -
|
0 / 0
|
0 / 0
|
Opakovaný zápis
|
NE
|
Opakovaný zápis
|
NE
|
Rozvrh
|
Ano
|
Vyučovaný semestr
|
Zimní semestr
|
Vyučovaný semestr
|
Zimní semestr
|
Minimum (B + C) studentů
|
nestanoveno
|
Volně zapisovatelný předmět |
Ano
|
Volně zapisovatelný předmět
|
Ano
|
Vyučovací jazyk
|
Čeština
|
Počet dnů praxe
|
0
|
Počet hodin kontaktní výuky |
0
|
Hodnotící stupnice |
A|B|C|D|E|F |
Periodicita |
každý rok
|
Hodnotící stupnice pro zp. před zk. |
S|N |
Periodicita upřesnění |
|
Základní teoretický předmět |
Ne
|
Profilující předmět |
Ano
|
Základní teoretický předmět |
Ne
|
Hodnotící stupnice |
A|B|C|D|E|F |
Hodnotící stupnice pro zp. před zk. |
S|N |
Nahrazovaný předmět
|
KIT/INOS1
|
Vyloučené předměty
|
Nejsou definovány
|
Podmiňující předměty
|
Nejsou definovány
|
Předměty informativně doporučené
|
Nejsou definovány
|
Předměty,které předmět podmiňuje
|
Nejsou definovány
|
Graf četnosti udělených hodnocení studentům napříč roky:
Obrázek PNG
,
XLS
|
Cíle předmětu (anotace):
|
Cílem předmětu je rozšířit znalosti obecné teorie operačních systémů (pokročilé koncepty správy paměti, řešení problémů souběhu aj.) a praktickým použitím teorie v posixových operačních systémech se zaměřením na IPC v Linuxu (Inter-Process Communication: systémová volání pro řešení souběhu, komunikace a synchronizace, implementace semaforů, front zpráv, plánovací třídy apod.).
|
Požadavky na studenta
|
Zápočet: V rámci praktické práce student řeší úlohy typicky zadané jako zdrojový kód s problémem, do kterého je potřeba dopsat řešení. Jejich úspěšné vyřešení je podmínkou získání zápočtu. Získané body se počítají do hodnocení zkoušky.
|
Obsah
|
1. Koncepce OS, architektura jádra, HW předpoklady.
2. Implementace procesů, posixových signálů, systémová volání.
3. Implementace vláken, problematika globálních proměnných a reentrantnosti funkcí, posixová volání.
4. Plánovací algoritmy, plánování v Linuxu: plánovací třídy a priority -- deadline, real-time (FIFO, RR, statická priorita) a normal (dynamická priorita).
5. Problémy souběhu, víceprocesorové systémy (SMP), kritická sekce, SW a HW řešení.
6. Řešení kritické sekce pomocí nástrojů OS, implementace semaforu a mutexu, systémová volání.
7. Synchronizace pomocí bariéry, podmínkové proměnné a jejich implementace, semaforu, systémová volání.
8. Systémová volání pro komunikaci procesů: roury, sokety, fronty zpráv a jejich využití pro řešení synchronizace a kritické sekce.
9. Řešení synchronizace a kritické sekce pomocí nástrojů programovacích jazyků: koncept monitoru (Java, C#).
10. Deadlock, livelock a vyhladovění. Prevence a řešení.
11. Virtuální paměť: stránkování a související algoritmy (zavádění, výměna a odkládání stránek), víceúrovňové stránkové tabulky, segmentace. Architektura IA-32, PAE, IA-32e (x86_64).
12. Virtualizace: nativní, paravirtualizace, kontejnerová.
13. Principy vývoje OS, bezpečnost (konzistence dat, oprávnění uživatelů, procesů, šifrování, firewall), typy útoků.
|
Aktivity
|
|
Studijní opory
|
V případě mimořádných opatření bude výuka probíhat vzdáleně s využitím programu MS Teams v době dle rozvrhu. Účast na schůzkách skupiny v MS Teams je ekvivalentní účasti na přednáškách a cvičeních.
|
Garanti a vyučující
|
-
Garanti:
doc. Ing. Tomáš Brandejský, Dr. ,
Mgr. Tomáš Hudec ,
-
Přednášející:
doc. Ing. Tomáš Brandejský, Dr. (100%),
Mgr. Tomáš Hudec (100%),
Ing. Soňa Neradová, Ph.D. (100%),
-
Cvičící:
Mgr. Tomáš Hudec (100%),
Ing. Soňa Neradová, Ph.D. (100%),
|
Literatura
|
-
Základní:
Intel 64 and IA-32 Architectures: Software Developer's Manual: Volume 3A: System Programming Guide, Part 1. [online]. Intel, 2016-09 [cit. 2021-04-27].
-
Základní:
TANENBAUM, Andrew Stuart. Modern Operating Systems. 4. vydání. Pearson, 2014. ISBN 978-0133591620.
-
Základní:
Standard for Information Technology---Portable Operating System Interface (POSIX): Base Specifications, Issue 7. [online]. New York: IEEE Computer Society and The Open Group, 2016-09-30 [cit. 2021-04-27]. ISBN 978-1-5044-2337-3.
( DOI: 10.1109/IEEESTD.2016.7582338 )
-
Rozšiřující:
LOVE, Robert. Linux kernel development. 3. vydání. Upper Saddle River: Addison-Wesley, 2010. ISBN 978-0-672-32946-3.
-
Rozšiřující:
STONES, Richard – MATTHEW, Neil. Linux: Začínáme programovat. 4. vydání. Brno: Computer Press, 2008. ISBN 978-80-251-1933-4.
-
Rozšiřující:
TANENBAUM, Andrew Stuart – WOODHULL, Albert. Operating Systems Design and Implementation. 3. vydání. USA: Prentice Hall, 2006. ISBN 978-0-13-142938-3.
-
Rozšiřující:
STALLINGS, William. Operating Systems: Internals and Design Principles. 9. vydání. Pearson, 2018. ISBN 978-0-13-467095-9.
-
Rozšiřující:
MAUERER, Wolfgang. Professional Linux Kernel Architecture. Wrox, 2008. ISBN 978-0470343432.
-
Rozšiřující:
TANENBAUM, Andrew Stuart – AUSTIN, Todd. Structured Computer Organization. 6. vydání. Pearson, 2012. ISBN 978-0132916523.
-
Rozšiřující:
BOVET, Daniel Pierre – CESATI, Marco. Understanding the Linux Kernel. 2. vydání. USA: O'Reilly, 2005. ISBN 978-0596005658.
-
Doporučená:
HUDEC, Tomáš. SSH -- Postup pro vzdálené přihlášení pomocí klíče. [online]. Pardubice: Univerzita Pardubice, FEI, 2021-03-02 [cit. 2021-04-27].
-
Doporučená:
BRANDEJS, Michal. UNIX: Materiály k výuce. [online]. Brno: FI MU, 2008 [cit. 2021-04-27].
|
Časová náročnost
|
Prezenční forma studia
|
Aktivity
|
Časová náročnost aktivity [h]
|
Kontaktní výuka
|
65
|
Příprava na zápočet
|
6
|
Domácí příprava na výuku
|
26
|
Příprava na zkoušku
|
30
|
Sběr materiálu
|
13
|
Semestrální práce
|
39
|
Celkem
|
179
|
|
Předpoklady - další informace k podmíněnosti studia předmětu |
Uživatelská znalost libovolného unixového (posixového) OS, znalost programovacího jazyka C, základní znalost správy OS. |
Získané způsobilosti |
Absolvováním předmětu záskají studenti pokročilý vhled do fungování operačních systémů, zejména správy paměti, procesů a vláken, řešení meziprocesové komunikace a problémů souběhu. |
Vyučovací metody |
|
Hodnotící metody |
- Ústní zkouška
- Písemná zkouška
- Posouzení zadané práce
|
|
|
|