Kurzusleírás

Bevezetés

  • A GNU/Linux gyors története
  • Licencelés
  • Kernel verziószámozás
  • Kiadási ciklus
  • Kernel fák
  • Főág
  • Kernel vs. felhasználói tér
  • Mechanizmus vs. politika
  • Kernel meghajtó alternatívák
  • RTOS vs. Linux

Memóriakezelés

  • Virtuális memória vs. fizikai memória
  • Memóriafoglalás a kernelben
  • Lapok
  • Zónák
  • API
  • Slab

Kernel Patch

  • Életciklus
  • Git
  • Kernel forrás
  • Patch készítése
  • Patch ellenőrzése
  • Patch javítása
  • Patch elküldése
  • Ellenőrzött kód

Kernel Modulok

  • Kernel források beszerzése
  • Konfigurálás/fordítás/telepítés
  • Eszközmeghajtók (statikus linkelés, futásidőben betöltés)
  • Init/exit
  • Licencelés
  • EXPORT SYMBOL GPL
  • Out of tree makefile
  • Module-init-tools
  • Modul a kernel fában
  • Kconfig
  • Paraméterátadás
  • Sparse

Karakteres Meghajtók

  • Architektúra
  • Felhasználói/kernel interfész
  • I/O alrendszer
  • VFS
  • Sysfs (eszközök, busz, meghajtók, osztályok),
  • Kobject/ktype/kset
  • Linux kernel meghajtó modell
  • Eszközfájlok
  • Karakteres meghajtó
    • Inicializálás
    • Regisztráció
    • Open, release
    • Cdev, cdev add, cdev del,...
    • Major/minor számok
    • Udev, udevmonitor, udevadm

Haladó Karakteres Meghajtó Műveletek

  • ioctl
  • Unlocked ioctl
  • Compat ioctl
  • Felhasználói tér API
  • Kernel tér API
  • Folyamat életciklus
  • Alvás/blokkolás
  • Alvás/felébredés
  • Várólista
  • Thundering herd
  • Poll/select

Kernel Hibakeresés

  • Hibakeresés
  • Kernel hibakeresés
    • Bináris keresés git segítségével
    • Hibakeresési támogatás a kernelből
    • Printk syslogd, klogd, naplózási szintek, aránykorlát, hibakeresési szintek, szelektív alrendszerek hibakeresése
    • Hibakeresés debugfs lekérdezéssel
    • Oops hibakeresés, oops kényszerítése
    • Magic SysRq Key
    • Kgdb/kdb
    • JTAG

Nyomkövetés

  • gcov
  • lcov
  • oprofile
  • ftrace
    • Nop tracer
    • Function tracer
    • Sched switch tracer
    • Function graph tracer
    • Dynamic tracer
  • trace-cmd/kernelshark
  • perf
  • LTTng

Megszakítások

  • Megszakítások vs. polling
  • Megszakítás
  • Programrészek
  • Reentrancia
  • Események
  • Megszakításkezelő
  • Megosztott megszakításkezelő
  • Megszakítási folyam
  • Megszakítási vezérlés

Munka Elhalasztása

  • Felső/alsó felek
  • Softirqs
  • Tasklets
  • Munka sorok
  • Szálas megszakítások

Egyidejűség

  • Kritikus régió/szakasz
  • Atomikus
  • Versenyhelyzet
  • Szinkronizáció
  • Zárás
  • Zárási megoldások
  • Holtpont
  • Versengés
  • Mit kell lezárni?
  • Mit lehet használni?
    • Atomikus műveletek
    • Spin lockok
    • Olvasó-író spin lockok
    • Szemafor
    • Bináris szemafor
    • Mutex
    • Olvasó-író szemafor
    • Befejezési változók
    • Szekvenciális lockok
    • Preempt letiltása
    • Sorrend és korlátok

Idő

  • HZ
  • Jiffies
  • Nagy/kis késések
  • Kernel időzítők

Hardver I/O

  • I/O Portok
  • I/O Memória
  • Hogyan kezeljük a regiszterek elérésének mellékhatásait?

Felhasználó-Kernel Kommunikáció

  • put(get)_user()
  • copy to(from)_user()
  • Kernel I/O
  • Memórialeképezés
  • procfs
  • sysfs
  • debugfs
  • relayfs
  • netlink
  • ioctl

Hordozhatóság

  • Szó méret
  • Opákus típusok
  • Előjeles/előjel nélküli char
  • Adatigazítás
  • Egész típusú promóció
  • Kód újrafelhasználás
  • Bájt sorrend
  • Rendszer tick
  • Lap méret
  • Utasítás sorrend
  • SMP/preempt/magas memória

Kivéve, ahol másképp jelezzük, a tartalom és a tananyag az Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) licenc alatt érhető el.

Követelmények

  • Alapvető ismeretek a GNU/Linux rendszer végfelhasználói szintű használatáról
  • Alapvető ismeretek a parancssori felület használatáról
  • Alapvető ismeretek a felhasználói térben történő alkalmazásfejlesztésről
  • Középfokú C programozási ismeretek
  • Javasolt, hogy korábban már részt vett a Beágyazott GNU/Linux Rendszerarchitektúra képzésen (erősen ajánlott!), vagy rendelkezzen a kitért témák alapos ismeretével
 35 Órák

Résztvevők száma


Ár per résztvevő

Vélemények (5)

Közelgő kurzusok

Rokon kategóriák