Programování pro Linux Kernel - ovladače jádra (KERN)
Tématicky se kurz zaměří na programovaní v oblasti jádra (kernelu) systému Linux. Budou probrány a procvičovány základní principy vytvoření modulu, komunikace s uživatelským prostorem, způsoby ladění v jádře a čeho se vyvarovat v tomto mírně odlišeném prostředí, zahrnujícím implicitní vícevláknové chování, odlišné kontexty (přerušení vs. proces, pamět uživatele vs. jádra) atd. Předpokladem jsou znalosti základů OS a výhodou znalosti v rozsahu Programování systému UNIX/LINUX (C3).
Kurz je zařazen v kategoriích: |
Operační systémy → Linux / Unix Programování → C/C++ Ostatní |
Náročnost kurzu: expert
Délka kurzu: 3 dny
Náplň kurzu:
- Úvod do problematiky (např. žádné libc, lib*)
- Práce s GITem, kódem (cross reference apod.) a patchi (proces zařazení)
- Možnosti ladění
- Vytvoření nahratelného modulu
- Alokace paměti (slub a page alokátory)
- Komunikace s uživatelským prostorem
- Přístup do paměti uživatelského prostoru
- I/O
- Přerušení
- Chyby souběhu a jejich řešení
- perf
- Podrobnější obsah kurzu je možné stáhnout zde
Předpokládané znalosti: Zkušenosti s programováním pro systém Linux
Časový rozvrh: 9:00 - 17:00
.Termíny kurzu:
Doporučené předchozí a návazné kurzy: