Linux Kernel programozás – különös tekintettel az eszközvezérlők programozására.
Tematika:
Rövid bevezető a Linuxról
Linux fejlesztői eszközök – gcc – Fejlesztői könyvtárak és kezelésük – Makefile – Hibakeresés
Alkalmazás fejlesztés – Állomány és I/O kezelés
Linux kernel ismertető – A Linux elindulásának folyamata – Folyamatok kezelése – Ütemezés – Megszakítás kezelés – Valósidejűség kérdésköre – Memória kezelés – Eszközök
Kernel modulok készítése – Egyszerű kernel modul, a modul fejlesztés alapjai – Paraméter átadás – Egyszerű karakteres eszközvezérlő, egyszeres megnyitás kérdése – A /proc állományrendszer használata – Más eszközmeghajtók elérése
A hibakeresés módszerei – Egyszerű módszerek (printk, proc, kernel fordítási opciók) – Az Oops üzenet feldolgozása – Magic SysRq – gdb – kgdb elméletben
Memória allokáció
Konkurencia kezelés – spinlock – semaphore – Egyéb eszközök 9. Az ioctl() implementációja