Osnova přednášky Programování v UNIXu (NSWI015)

zimní semestr 2015/2016

Vezměte prosím na vědomí, že čísla slajdů neodpovídají současné verzi, je to jen orientační, protože slajdy se průběžně upravují.

1. přednáška (8.10.)
Administrativa, podmínky a pravidla, informace o cvičení, průřez celou přednáškou s ukázkou příkladů.
[slajdy 1-218]

2. přednáška (15.10.)
úvod, literatura, vývoj, standardy, C, programátorské utility, konvence, princip překladu, linker, ar, make, dynamický linker
[slajdy 3-31]

3. přednáška (22.10.)
API vers ABI, debuggery, přehled headerů, main(), environment proměnné, zpracování přepínačů (getopt, getopt_long), struktura UNIXu, procesy, vlákna, programy
[slajdy 32-48]

4. přednáška (29.10.)
systémová volání obecně, knihovní funkce pro návratové hodnoty systémových volání, API pro soubory
[slajdy 49-53, 79-100]

5. přednáška (5.11.)
/etc/passwd, /etc/group, přístupová práva, identifikace procesů a souborů (UID, GID), set UID, úvod do systému souborů, přístup k zařízením, fyzické uložení filesystému, organizace filesystémů s5 a ufs, navigace v adresářích, linky, vývoj ve správě adresářových položek, VFS, otevřené soubory z pohledu jádra, práva pro soubory, různé způsoby zajištění konzistence souborového systému, fsck
[slajdy 54-78]

6. přednáška (12.11.)
skupiny procesů, job control, sessions, identifikace procesu, start a ukončení procesu a programu, ELF, roury
[slajdy 112-121]

7. přednáška (19.11.)
paměť procesů a jádra, virtuální paměť, stavy procesu, plánování procesů, sdílená pamět, mapování souborů do paměti
[slajdy 103-111, 122-125]

8. přednáška (26.11.)
dynamický přístup ke knihovnám, signály
[slajdy 126-128, 130-141]

9. přednáška (3.12.)
úvod do synchronizace procesů, zamykání (problém vzájemného vyloučení, lock soubory, zamykání pomocí fcntl, deadlock), System V IPC obecně, System V semafory.
[slajdy 143-160]

10. přednáška (10.12.)
síťová komunikace
[slajdy 162-186]

11. přednáška (17.12.)
select/poll, inetd, úvod do vláken, globální proměnné pro vlákna, vytvoření/ukončení/zrušení vlákna, fork a vlákna, signály a vlákna
[slajdy 187-205]

12. přednáška (7.1.)
synchronizace vláken, reentrantnost funkcí, nepřenositelná volání pro vlákna
[slajdy 206-219]

13. přednáška (14.1.)
debugging


Poslední změna: