Programování v systému Unix/Linux - základní kurz (LNX7)

Unixové systémy, Linux

Kurz je určen účastníkům, kteří chtějí získat znalosti programování operačního systému UNIX/Linux pomocí standardních knihoven.

Lokalita, termín kurzu



Brno
3.1. - 5. 1. 2018
Objednat
28.2. - 2. 3. 2018
Objednat
25.4. - 27. 4. 2018
Objednat
Praha
22.1. - 24. 1. 2018
Objednat
19.3. - 21. 3. 2018
Objednat
14.5. - 16. 5. 2018
Objednat
Vlastní Školení na míru (termín, lokalita, obsah, délka)

Náplň kurzu:

Skrýt detaily
  • Zopakování syntaxe jazyka C
    1. význam ANSI C
    2. direktivy preprocesoru
  • Filosofie programování systému UNIX/Linux
    1. open source principy
    2. UNIXový přístup
    3. použití open source knihoven v komerčních programech
  • Chyby a jejich ošetření
    1. konvence návratových hodnot
    2. práce s errno
    3. převod chyby na řetězec
    4. volání perror
  • Základní nástroje vývojáře
    1. překladač gcc
    2. nástroj make
    3. použití vývojového prostředí
    4. ruční kompilace pomocí make a gcc
  • Práva běžícího programu a uživatelské informace
    1. volání getuid
    2. setuid
    3. funkce z hlavičkových souborů shadow.h a passwd.h
  • Práce se soubory funkcemi standardních knihoven (stdlib)
    1. práce se soubory voláním jádra
    2. význam file-descriptoru
    3. standardní vstup a výstup
    4. zamykání souborů apod.
  • Údržba souborů a adresářů
    1. odkazy (linky)
    2. práva souborů a adresářů
    3. vytváření a manipulace s nimi apod.
  • Argumenty funkce main
    1. zpracování parametrů pomocí funkce getopt
    2. proměnné atd.
  • Paměť
    1. alokace a uvolnění paměti
    2. volání malloc
    3. free
  • Procesy
    1. definice
    2. systém a plánování procesu
    3. základní volání
  • Vývojový nástroj make
    1. syntaxe souboru Makefile
  • Dynamické knihovny
    1. volání funkcí z dynamické knihovny
    2. vytváření dynamických knihoven
  • Vlákna
    1. definice a programování
    2. výhody a nevýhody oproti procesu
  • Zdroje a limity
    1. limity pro běh procesu
    2. priorita procesu
  • Terminál
    1. vlastnosti, nastavení, význam
    2. program getpass
    3. standardní vstup a výstup atd.
  • Programování v síti (protokol TCP/IP)
    1. programování pro Internet
    2. program server a klient
    3. volání socket
    4. conect, accept, listen atd.
  • Pokročilé vlastnosti TCP/IP
    1. práce s IPv6
    2. správná práce s DNS resolverem
    3. blokující a neblokující IO operace
    4. použití neblokujícího TCP spojení
  • Práce s debuggerem GDB
  • Ladění problémů s pamětí, best practises, nástroj Valgrind pro ladění paměťových problémů
Předpokládané znalosti:
Dobrá znalost programování a programovacího jazyka C, uživatelská znalost OS UNIX/Linux.
Doporučený předchozí kurz:
Linux - základy administrace (LNX1)
Doporučený následný kurz:
Programování v systému Unix/Linux - pro pokročilé (LNX8)
Časový rozvrh:
3 dny (9:00hod. - 17:00hod.)
Cena kurzu:
12 900,00 Kč (15 609,00 Kč včetně 21% DPH)
V ceně je publikace v hodnotě:
900,00 Kč

Vybrané zákaznické reference

ComAp a.s., Jan T.
Programování v systému Unix/Linux - základní kurz ( LNX7)
"Lektor ma viditelne vysokou odbornost a dobre pedagogicke schopnosti. Prostor pro zlepseni vidim ve vyjadrovani, napriklad mene castem pouzivani obratu "...jak kdyby.." :-)"