Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2024/2025

Operační systémy

Přihlášení do KOSu pro zápis předmětu Zobrazit rozvrh
Kód Zakončení Kredity Rozsah Jazyk výuky
B4B35OSY Z,ZK 4 2P+2C česky
Garant předmětu:
Michal Sojka
Přednášející:
Michal Sojka, Petr Štěpán
Cvičící:
Jan Chudoba, Matěj Kafka, Lukáš Maruniak, Michal Sojka, Petr Štěpán, Jiří Vlasák, Jiří Záhora
Předmět zajišťuje:
katedra řídicí techniky
Anotace:

Student se seznámí se základními koncepty a principy operačních systémů, jako jsou procesy a vlákna, jejich komunikace a plánování, synchronizační prostředky, virtuální paměť, správa periferií, souborové systémy či základní otázky bezpečnosti. Na přednáškách budou tato témata probrána teoreticky s odkazy na implementace převážně v OS Linux a Windows. Od začátku budou uvažovány platformy s vícejádrovými procesory. Na cvičeních budou studenti vypracovávat úlohy v jazyce C, C++ nebo Rust a budou pracovat s operačními systémy Linux a NOVA (mikrojádro).

Požadavky:

programovaní C

architektury počítačů

Osnova přednášek:

1. Architektura počítače, historie a typy OS, komponenty OS.

2. Obsluha přerušení a vyjímek. Systémová volání.

3. Procesy, vlákna, přepínání kontextu, rozvrhování (plánování), lokální vs. globalní plánování, migrace vláken.

4. Synchronizace, časově závislé chyby, přístup ke sdíleným zdrojům (nepreemptivní sekce, semafory, mutexy, spinlocky, Java synchronize), uváznutí.

5. Meziprocesní komunikace (signály, roury, předávání zpráv)

6. Virtuální paměť, výpadky stránek, odkládání, copy-on-write, spouštění procesů, relokace, dynamické knihovny.

7. Správa paměti, paměťové alokátory (v jádře a uživatelském prostoru, halda).

8. Bezpečnost (security), trusted computing base, buffer overflow, ASLR, antiviry, šifrování.

9. Vstup/výstup, ukládání dat, síťová rozhraní, USB, HID, ovladače zařízení (Linux, Win).

10. Souborové systémy, žurnálování, integrita dat, disková vyrovnávací paměť.

11. Grafický subsystém, trame buffer, HW akcelerace, paralelní výpočty.

12.Virtualizace.

13. Mobilní OS, struktura OS Android a jeho aplikací, spolupráce s cloudovými službami

14. Duševní vlastnictví a jeho ochrana, open source softwarové licence, ekonomické aspekty využití open source

Osnova cvičení:

1. Úvod, shell, opakování programování v C, makefile praktický vstupní test

2. Základy používání shellu, skriptování.

3. Systémová volání - Linux (assembler, C)

4. Systémová volání - na mikrojádře NOVA

5. Synchronizace v C - úloha na vlákna a synchronizaci (Linux)

6. Úloha na IPC (roura mezi vlákny, obsluha signálů, Linux)

7. Zavedení ELF souboru do paměti a spuštění (NOVA)

8. Přepínání vláken (NOVA)

9. Semafor, preemptivní multitasking (NOVA)

10. Bezpečnost, buffer overflow exploit (Linux)

11. Alokace paměti (halda, Linux)

12. Implementace souborového systému (NOVA)

13. Odevzdání souborového systému, zápočet.

Cíle studia:
Studijní materiály:

1. TANENBAUM, Andrew S a Albert S WOODHULL. Operating systems design and implementation. 3rd ed. Upper Saddle River: Prentice-Hall, c2006, xvii, 1054 s. ISBN 0131429388.

2. http://wiki.osdev.org/

3. http://hypervisor.org/

Poznámka:
Další informace:
https://osy.pages.fel.cvut.cz/
Rozvrh na zimní semestr 2024/2025:
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Po
Út
místnost KN:E-23
Kafka M.
11:00–12:30
(přednášková par. 1
paralelka 105)

Karlovo nám.
Laboratoř AB
místnost KN:E-23
Štěpán P.
12:45–14:15
(přednášková par. 1
paralelka 107)

Karlovo nám.
Laboratoř AB
místnost KN:E-23
Štěpán P.
14:30–16:00
(přednášková par. 1
paralelka 108)

Karlovo nám.
Laboratoř AB
místnost KN:E-23
Štěpán P.
18:00–19:30
(přednášková par. 1
paralelka 109)

Karlovo nám.
Laboratoř AB
St
místnost KN:E-23
Chudoba J.
09:15–10:45
(přednášková par. 1
paralelka 101)

Karlovo nám.
Laboratoř AB
místnost KN:E-23
Chudoba J.
11:00–12:30
(přednášková par. 1
paralelka 102)

Karlovo nám.
Laboratoř AB
místnost T2:H1-131
Maruniak L.
12:45–14:15
(přednášková par. 1
paralelka 103)

Dejvice haly
AlgDejvice
místnost T2:H1-131
Maruniak L.
14:30–16:00
(přednášková par. 1
paralelka 106)

Dejvice haly
AlgDejvice
Čt
místnost T2:H1-131
Sojka M.
09:15–10:45
(přednášková par. 1
paralelka 110)

Dejvice haly
AlgDejvice
místnost T2:H1-131
Sojka M.
11:00–12:30
(přednášková par. 1
paralelka 111)

Dejvice haly
AlgDejvice
místnost T2:D3-309
Sojka M.
Štěpán P.

14:30–16:00
(přednášková par. 1)
Dejvice
T2:D3-309

Rozvrh na letní semestr 2024/2025:
Rozvrh není připraven
Předmět je součástí následujících studijních plánů:
Platnost dat k 10. 10. 2024
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/cs/predmet4683606.html