Programování systému UNIX/LINUX (C3)
Kurz je určen všem, kteří chtějí získat znalosti programování operačního systému UNIX/Linux pomocí standardních knihoven.
Kurz je zaradený v kategóriách: |
Operační systémy → Linux / Unix Programování → C/C++ Ostatní |
Náročnosť 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 ošetř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 uživatelské informace - volání getuid, setuid; funkce z hlavičkových souborů shadow.h, passwd.h, ověření přihlašovací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.
- Údržba 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
Predpokladané znalosti: dobrá znalost programování a programovacího jazyka C, uživatelská znalost OS UNIX/Linux, popřípadě znalosti na úrovni kurzů C1 a LX1
V cene kurzu je publikácia v hodnote: 800 CZK
.Termíny kurzu:
Odporučené predchádzajúce a nadväzujúce kurzy:
Odporučené predchádzajúce a nadväzujúce kurzy