Kurzusleírás

Bevezetés

  • a GNU/Linux gyors története
  • engedélyezés
  • kernel verziószámítás
  • felszabadítási ciklus
  • kernel fák
  • fővonal
  • kernel vs. user space
  • mechanizmus kontra politika
  • kernel meghajtó alternatívák
  • RTOS kontra Linux

Memória Management

  • Virtuális memória vs. fizikai memória
  • memóriafoglalás a kernelben
  • oldalakat
  • zónák
  • API
  • lap

Kernel Patch

  • életciklus
  • git
  • kernel forrás
  • hozzon létre javítást
  • ellenőrizze a javítást
  • javítás javítás
  • hajófolt
  • auditált kód

Kernel modulok

  • kernel források beszerzése
  • konfigurálás/építés/telepítés
  • eszközillesztők (statikusan csatolva, futás közben betöltve)
  • init/exit
  • engedélyezés
  • EXPORTJEL GPL
  • fa makefile-ből
  • modul-init-tools
  • modul a kernelfában
  • Kconfig
  • paraméter átadás
  • ritka

Char Drivers

  • építészet
  • felhasználói/kernel felület
  • I/O alrendszer
  • VFS
  • sysfs (eszközök, busz, illesztőprogramok, osztályok),
  • kobject/ktype/kset
  • linux kernel illesztőprogram modell
  • eszközfájlokat
  • char driver
    • inicializálás
    • bejegyzés
    • nyit, elenged
    • cdev, cdev add, cdev del,...
    • fő/moll számok
    • udev, udevmonitor, udevadm

Speciális karakterillesztő-műveletek

  • ioctl
  • feloldott ioctl
  • kompat ioctl
  • felhasználói tér API
  • kernel space API
  • folyamat életciklusa
  • alvás/blokkolás
  • alvás/ébredés
  • várakozási sor
  • mennydörgő csorda
  • szavazás/kiválasztás

Kernel hibakeresés

  • bogár
  • hibakeresés
  • a kernel hibakeresése
    • bináris keresés a git segítségével
    • hibakeresési támogatás a kernelről
    • printk syslogd, klogd, loglevels, sebességkorlát, hibakeresési szintek, szelektív alrendszerek hibakeresése
    • hibakeresés a debugfs lekérdezésével
    • hoppá hibakeresés, állítás hoppá
    • Magic SysRq kulcs
    • kgdb/kdb
    • JTAG

Nyomkövetés

  • gcov
  • lcov
  • oprofil
  • ftrace
    • nop nyomkövető
    • funkció nyomkövető
    • Sched switch nyomkövető
    • függvénygráf nyomkövető
    • dinamikus nyomkövető
  • trace-cmd/kernelshark
  • perf
  • LTTng

Megszakítja

  • megszakítások vs. szavazás
  • megszakítani
  • programrészek
  • visszatérés
  • eseményeket
  • megszakításkezelő
  • megosztott megszakításkezelő
  • megszakítja az áramlást
  • vezérlés megszakítása

Munka elhalasztása

  • felső/alsó felek
  • softirqs
  • feladatlapok
  • munkasorok
  • menetes megszakítások

Egyidejűség

  • kritikus régió/szakasz
  • atom
  • verseny állapota
  • szinkronizálás
  • záró
  • zárolási megoldások
  • holtpont
  • állítás
  • mit kell zárni?
  • mit lehet használni?
    • atomi műveletek
    • forgó zárak
    • olvasó-író forgózárak
    • szemafor
    • bináris szemafor
    • mutex
    • olvasó-író szemafor
    • befejezési változók
    • szekvenciális zárak
    • letiltja az elővásárlást
    • rend é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 regiszterekhez való hozzáférés mellékhatásait?

Felhasználói kernel Communication

  • put(get)_user()
  • másolás ide:(from)_user()
  • Kernel I/O
  • memória leképezés
  • procfs
  • sysfs
  • debugfs
  • relék
  • netlink
  • ioctl

Hordozhatóság

  • szóméret
  • átlátszatlan típusok
  • aláírt/aláíratlan karakter
  • adatigazítás
  • integrált promóció
  • kód újrafelhasználása
  • endianess
  • rendszer pipa
  • oldalméret
  • utasítás rendelés
  • SMP/preemption/magas memória

Kivéve, ha másként van megjelölve, a tartalom és a jelen kurzusvázlat az Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) licenc alatt áll.

Követelmények

  • A GNU/Linux rendszer végfelhasználóként való használatának alapvető ismerete
  • Alapvető ismeretek a parancssori shellről
  • Felhasználói tér/alkalmazásfejlesztési alapismeretek
  • Középfokú C programozási ismeretek
  • Korábban részt kellett volna vennie az Embedded GNU/Linux Systems Architecture programban (erősen ajánlott!), és/vagy jól értenie kellett volna az ott felvázolt témákat
 35 Órák

Résztvevők száma


Ár résztvevőnként

Vélemények (5)

Közelgő kurzusok

Rokon kategóriák