Programové rozhraní operačních systémů
Kód | Zakončení | Kredity | Rozsah |
---|---|---|---|
Y36API | KZ | 4 | 2+2s |
- Předmět nesmí být zapsán současně s:
- Programové rozhraní operačních systémů (A7B36API)
- Předmět je náhradou za:
- Programové rozhraní operačních systémů (A7B36API)
- Přednášející:
- Radim Ballner (gar.), Karel Šimeček, Tomáš Zahradnický
- Cvičící:
- Tomáš Siegl, Karel Šimeček, Tomáš Zahradnický
- Předmět zajišťuje:
- katedra počítačů
- Anotace:
-
Předmět je úvodem do systémového programování v operačních systémech Linux a
MS Windows. Student se seznámí se základním aplikačním programovým rozhraním
(API) jádra OS (soubory, semafory, sokety, procesy, vlákna, přístupová
práva), se základy grafických API (okna a jejich správa, X11, událostmi
řízené programování), se základními knihovnami OS a se zásadami bezpečného
programování.
- Požadavky:
- Osnova přednášek:
-
1.Úvod do OS. Vazby mezi OS a CPU a mezi OS a vyššími jazyky.
2.Přehled GNU libc na Linuxu a MS C library.
3.Chyby při systémovém programování.
4.Bezpečné systémové programování.
5.Síťové programování.
6.WIN32 API - soubory, synchronizace.
7.WIN32 API - zprávy, okna, základní prvky GUI.
8.WIN32 API GDI - fonty, bitmapy, kreslení.
9.LINUX - X server.
10.LINUX - QT library.
11.LINUX - GNOME/GTK.
12.Porovnání obou platforem z hlediska systémového programování.
13.Delphi/Kylix, Object Pascal, struktura VCL, podobnosti s C#.
14.Rekapitulace - vhodnost různých jazyků pro různé účely a porovnání API.
- Osnova cvičení:
-
1.Seznámení s prostředím (gcc, delphi, C#). Diskuse k semestrální práci.
2.Zadání semestrální práce. Konzolové aplikace Win vs Linux.
3.Zadání úkolu 1 - získání přístupu ke stroji, na kterém běží speciální
démon, který bude obsahovat buffer overflow.
4.Práce na úkolu číslo 1.
5.Práce na úkolu číslo 1.
6.Kontrola úkolu číslo 1 a uvolnění zdrojového textu.
7.Prezentace výsledků.
8.Ukázky různých prostředí pro MS Windows a Linux s příklady.
9.Úkol 2: naprogramovat jednoduchou aplikaci (typu piškvorky) pro Windows i
Linux.
10.Práce na úkolu 2.
11.Práce na úkolu 2.
12.Práce na úkolu 2 a odevzdávání.
13.Odevzdáni semestrální práce a její prezentace.
14.Odevzdáni semestrální práce a její prezentace.
- Cíle studia:
- Studijní materiály:
- Poznámka:
-
Rozsah výuky v kombinované formě studia: 14+6
- Další informace:
- Pro tento předmět se rozvrh nepřipravuje
- Předmět je součástí následujících studijních plánů:
-
- Softwarové inženýrství (povinně volitelný předmět)