Detail předmětu

Operating Sytems and Networks

FEKT-NOSSAk. rok: 2019/2020

První část předmětu je věnována základním principům operačních systémů, správě procesů a vláken, komunikaci mezi procesy, synchronizaci procesů a vláken, správě paměti, souborovým systémům, strukturám operačních systémů a virtualizaci. Druhá část předmětu se zabývá počítačovými sítěmi. Studenti získají informace o síťových protokolech a standardech jako Ethernet, IEEE 802.1Q VLAN, PoE, TCP/IP a směrování v IP sítích. Zvláštní pozornost je věnována novému protokolu IPv6.

Garant předmětu

Výsledky učení předmětu

Absolvent je schopen:
- vytvořit jednoduchý aplikační program pro operační systém UNIX/Linux,
- vytvořit jednoduchou síťovou aplikaci založenou na rozhraní BSD socket,
- vytvářet programy s více vlákny,
- aplikovat synchronizační prostředky jako mutex, semafor, podmínková proměnná,
- popsat síťové protokoly a standardy Ethernet, IEEE 802.1Q VLAN, PoE, TCP/IP, IPv6, DNS, DHCPv4/DHCPv6, HTTP, SMTP,
- vysvětlit navázání a ukončení TCP spojení,
- vysvětlit mechanismy objevování sousedů u IPv6.

Prerekvizity

Student, který si předmět zapíše, by měl být schopen vytvořit jednoduchý program v jazyce C, využívat základní knihovní funkce jazyka C, vysvětlit základní činnost Von Neumannova počítače a popsat činnost procesoru při obsluze přerušení.

Doporučená nebo povinná literatura

Tanenbaum, S., A. Modern operating systems. 3.ed. Upper Saddle River, New Jersey 07458: Pearson Prentice Hall, 2008. 1076 p. ISBN 0-13-600663-9. (EN)
Silberschatz, A., Galvin, P., B., Gagne, G. Operating System Concepts. 8th ed. Hoboken: Wiley, 2010. 972 p. ISBN 978-0-470-233399-3. (EN)

Plánované vzdělávací činnosti a výukové metody

Metody vyučování zahrnují přednášky a cvičení na počítači. Student vypracuje osm úloh.

Způsob a kritéria hodnocení

Počítačová cvičení jsou hodnocena max. 30 body, z toho 15 bodů za samostatné naprogramování zadaných úloh a 15 bodů za závěrečný test.
Závěrečná zkouška má písemnou část a je hodnocena max. 70 body.

Jazyk výuky

angličtina

Osnovy výuky

1. Operační systém (dále OS), typy OS. Uniprogramming, multiprogramming, sdílení času. Jádro. Systémová volání. Procesy: stavy procesu, vytvoření a ukončení procesu.
2. Identifikátory spojené s procesy. Čekání na ukončení procesu. Plánování procesů. Signály. Řízení úloh.
3. Souborové systémy. Správa paměti.
4. Přesměrování vstupů a výstupů v UNIXu. Vlákna: implementace vláken, vytvoření vláken, ukončování a spojování vláken.
5. Synchronizace procesů a vláken (kritická sekce, mutex, semafor, podmíněná proměnná, bariéra). Problém uváznutí.
6. Struktura OS, typy jader. Virtualizace. Počítačové sítě: ISO OSI a TCP/IP model. Fyzická a linková vrstva. Ethernet.
7. Přepínaný Ethernet, přepínače (switches). IEEE 802.1Q VLAN Tagging. PoE.
8. IPv4 protokol: IPv4 datagram, IPv4 adresy. ICMP protokol. ARO protokol. Směrování, směrovací tabulka, agregace položek směrovací tabulky, základní algoritmus směrování.
9. Protokoly UDP a TCP. Navázání a ukončení TCP spojení.
10. DHCPv4. IPv6: IPv6 datagram, IPv6 adresy, identifikátory rozhraní.
11. IPv6: Objevování sousedů. Automatická konfigurace. DHCPv6.
12. DNS: domény, zóny, DNS záznamy (Resource Record, RR), typy RR, DNS dotazy, DNS servery, resolvery. DNSSEC.
13. Protokol HTTP, SMTP. Firewally. DMZ (demilitarizovaná zóna).

Cíl

Cílem předmětu je seznámit studenty se základními principy operačních systémů, základy programování uživatelských a síťových aplikací pro OS UNIX/Linux a síťovými protokoly a standardy jako Ethernet, IEEE 802.1Q VLAN, PoE, TCP/IP, IPv6, DNS, DHCPv4/DHCPv6, HTTP, SMTP.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

Počítačová cvičení jsou povinná, řádně omluvené zmeškané počítačové cvičení lze po domluvě s vyučujícím nahradit.

Zařazení předmětu ve studijních plánech

  • Program EEKR-MN magisterský navazující

    obor MN-KAM , 1. ročník, zimní semestr, 5 kreditů, volitelný oborový

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Cvičení na počítači

26 hod., povinná

Vyučující / Lektor