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

zimní semestr 2007/2008

1. přednáška (3.10)
Administrativa, podmínky a pravidla, informace o cvičení, průřez celou přednáškou
[slajdy 1-2xy]

2. přednáška (10.10)
úvod, literatura, vývoj, standardy, C, programátorské utility, konvence, princip překladu, linker, ar, make, debuggery, přehled headerů
[slajdy 1-32]

3. přednáška (17.10.)
main(), environment proměnné, zpracování přepínačů (getopt, getopt_long), struktura UNIXu, procesy, vlákna, programy
[slajdy 33-48]

4. přednáška (24.10.)
systémová volání obecně, knihovní funkce, API pro soubory
[slajdy 49-50, 75-96]

5. přednáška (31.10.)
/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
[slajdy 51-67]

6. přednáška (7.11.)
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, skupiny procesů, job control, sessions, identifikace procesu, start a ukončení procesu a programu
[slajdy 68-74, 106-113]

7. přednáška (14.11.)
roury, paměť procesů a jádra, virtuální paměť, stavy procesu, plánování procesů, mapování souborů do paměti
[slajdy 114-115, 97-105]

8. přednáška (21.11.)
sdílená paměť, mapování souborů do paměti, dynamický přístup ke knihovnám, signály
[slajdy 116-144]

9. přednáška (28.11.)
ú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 135-153]

10. přednáška (5.12.)
síťová komunikace
[slajdy 154-175]

11. přednáška (12.12.)
select/poll, inetd, úvod do vláken
[slajdy 176-193]

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

13. přednáška (2.1.)
??? - bude doplněno v průběhu semestru
[slajdy xxx-yyy]

14. přednáška (9.1.)
??? - bude doplněno v průběhu semestru
[slajdy xxx-yyy]