Subject description - AD7B38UOS

Summary of Study | Summary of Branches | All Subject Groups | All Subjects | List of Roles | Explanatory Notes               Instructions
AD7B38UOS Operating Systems - Introduction
Roles:P Extent of teaching:14P+6C
Department:13138 Language of teaching:CS
Guarantors:  Completion:Z,ZK
Lecturers:  Credits:6
Tutors:  Semester:L

Anotation:

Introduction into UNIX and MS Windows operating systems. Participants will become advanced users.

Course outlines:

1. Úvod, historie, typy operačních systémů (OS). Architektura počítačů a počítačových systémů. Základní prvky, procesor, registry procesoru, paměť, disky, vstupně/výstupní zařízení (I/O devices), sběrnice. Provádění instrukcí.
2. Úloha operačního systému. Struktura OS, operace, služby. Uživatelské rozhraní (znakové, grafické). Systémová volání. Systémové programy. Virtuální stroje. Start (booting) a vypnutí OS.
3. Vývoj aplikačních programů. Programovací nástroje. Aplikační programové rozhraní API (Application Programming Interface). Standard POSIX. Vytvoření spustitelného souboru, použití kompilátoru a linkeru. Statické a dynamické (sdílené) knihovny. Ladění programů.
4. Správa procesů. Plánování procesů a vláken (scheduling). Typy plánovačů. Strategie plánování (příklady).
5. Komunikace mezi procesy (IPC InterProcess Communication). Signály, roury, sdílená paměť, soubory, fronty zpráv. Problémy IPC.
6. Synchronizace procesů a vláken. Problém kritické sekce. Synchronizační prostředky (semafory, mutexy, monitory). Příklady použití.
7. Klasické synchronizační úlohy. Uváznutí (deadlock), možnosti řešení. Komunikace v systémech klient-server.
8. Správa paměti. Adresový prostor. Techniky správy paměti, přidělování bloků paměti, stránkování, segmentace. Virtuální paměť.
9. Souborový systém, koncepce, přístupové metody, struktura disků a adresářů. Nástroje pro práci se souborovým systémem.
10. Distribuované systémy. Systémy založené na počítačových sítích. Síťové rozhraní. Distribuované systémy souborů. Synchronizace. Základy programování v počítačových sítích.
11. Bezpečnost. Základy kryptografie. Mechanismy zabezpečení. Útoky na OS, malware. Počítačové viry, trojské koně, spyware, adware. Ochrana proti škodlivému softwaru. Identita uživatelů, procesů a souborů. Přístupová práva a jejich nastavení.
12. Operační systémy reálného času RTOS (real-time operating system). Charakteristika, vlastnosti, základní parametry. Hard a soft-real time. Plánovací mechanismy v RTOS. Příklad RTLinux, VxWorks, PharLap, RTX.
13. OS pro speciální účely, vestavěné (embedded) systémy, příklady.
14. Příkladové studie. Linux, Windows XP, Solaris.

Exercises outline:

1. Úvod, práce v grafickém prostředí, jednoduché příkazy.
2. Seznámení se shellem, představení editoru vi.
3. Základní příkazy pro práci se soubory.
4. Standardní vstupy a výstupy procesu, filtry.
5. Regulární výrazy. Program grep.
6. Zpracování textů programy sed a awk.
7. Přístupová práva, program find, zálohováni a komprese dat.
8. Práce s procesy, návratový kód, příkaz test.
9. Proměnné, řídící příkazy shellu, bloky příkazů, funkce, numerické výpočty.
10. Uživatelský vstup, zpracování přepínačů, psaní a ladění skriptů, plánování úloh.
11. Procvičení skriptů, konzultace.
12. Procvičení skriptů.
13. Ukázka tvorby programu v jazyku C.
14. Náhradní testy. Udělení zápočtu.

Literature:

[1] Dráb, M.: Jádro systému Windows. Computer Press, Brno 2011.
[2] Jelínek, L.: Jádro systému Linux. Computer Press, Brno 2008.
[3] Sobel, M. G.: Mistrovství v Linuxu. Příkazový řádek, shell, programování. Computer Press, Brno 2007.
[4] Linux. Dokumentační projekt. 4. aktualizované vydání (volně dostupný dokument na Internetu).

Requirements:

Zakončení předmětu je podmíněno dosažením stanoveného součtu bodového hodnocení ze cvičení a zkouškové písemky. Bližší informace jsou na http://measure/vyuka/predmety/Y38UOS

Webpage:

https://moodle.fel.cvut.cz/courses/AD7B38UOS

Keywords:

Operační systém, procesy, vlákna, plánování procesů, IPC, synchronizace procesů.

Subject is included into these academic programs:

Program Branch Role Recommended semester
BKSTM_BO Common courses P 2
BKSTMWM Web and Multimedia P 2
BKSTMSI Software Engineering P 2
BKSTMMI Manager Informatics P 2
BKSTMIS Intelligent Systems P 2


Page updated 6.5.2021 19:54:04, semester: Z/2020-1, L/2021-2, L/2020-1, Z,L/2022-3, Z/2021-2, Send comments about the content to the Administrators of the Academic Programs Proposal and Realization: I. Halaška (K336), J. Novák (K336)