Programování systému UNIX/LINUX (C3)
Kurz je ur?en vem, kte?í cht?jí získat znalosti programování opera?ního systému UNIX/Linux pomocí standardních knihoven.
| Kurz je zaĹazen v kategoriĂch: |
Opera?ní systémy → Linux / Unix Programování → C/C++ Ostatní |
NĂĄroÄnost kurzu: pokroÄilĂ˝
DĂŠlka kurzu: 3 dny
NĂĄplĹ kurzu:
- Zopakování syntaxe jazyka C - význam ANSI C, výhody a nevýhody, direktivy preprocesoru
- Filosofie programování systému UNIX/Linux - význam open-source, jednoduchost
- Chyby a jejich oet?ení - základy lad?ní programu
- Základní nástroje vývojá?e - p?eklada? cc, gcc, základní parametry p?ekladu, úvod do vi
- Práva b?ícího programu a uivatelské informace - volání getuid, setuid; funkce z hlavi?kových soubor? shadow.h, passwd.h, ov??ení p?ihlaovacího hesla
- Práce se soubory funkcemi standardních knihoven (stdlib), práce se soubory voláním jádra, význam file-descriptoru, standardní vstup a výstup, zamykání soubor? apod.
- Údrba soubor? a adresá?? - odkazy (linky), práva soubor? a adresá??, vytvá?ení a manipulace s nimi apod.
- Argumenty funkce main - zpracování parametr? pomocí funkce getopt, prom?nné atd.
- Pam?? - alokace a uvoln?ní pam?ti, volání malloc, free, lad?ní pam?ti (ElectricFence)
- Procesy - definice, systém a plánování procesu, meziprocesová komunikace, roury (pipe), signály, zprávy, fronty zpráv, synchronizace proces? (semafory) atd.
- Vývojový nástroj make - syntaxe souboru Makefile
- Dynamické knihovny - volání funkcí z dynamické knihovny, vytvá?ení dynamických knihoven
- Vlákna - definice a programování, výhody a nevýhody oproti procesu
- Zdroje a limity - limity pro b?h procesu, priorita procesu
- Terminál - vlastnosti, nastavení, význam; program getpass; standardní vstup a výstup atd.
- Programování v síti (protokol TCP/IP) - programování pro Internet, program server a klient, volání socket, conect, accept, listen atd.
- Dopl?ková témata - programování terminálu pomocí ncurses, programování CGI
PĹedpoklĂĄdanĂŠ znalosti: dobrá znalost programování a programovacího jazyka C, uivatelská znalost OS UNIX/Linux, pop?ípad? znalosti na úrovni kurz? C1 a LX1
V cenÄ kurzu je publikace v hodnotÄ: 800 KÄ
.TermĂny kurzu:
DoporuÄenĂŠ pĹedchozĂ a nĂĄvaznĂŠ kurzy:
![]()
DoporuÄenĂŠ pĹedchozĂ a nĂĄvaznĂŠ kurzy
![]()
