Edocti Training
Linux-Interna und Anwendungsprogrammierung
Geplante Sessions
Aktuell sind keine Termine verfügbar.
Fähigkeiten, die Sie lernen werden
Linux System Calls
POSIX APIs & IPC
Multithreading & Sync
Speicherverwaltung
Signale & Fehlerbehandlung
GDB & Core Dumps
Yocto Project Basics
Embedded Linux Konzepte
Curriculum
Einführung in Embedded Linux
- Analyse der Hauptkomponenten eines Embedded‑Linux‑Projekts
Toolchains
- Arten von Toolchains
- Auswahl der C‑Bibliothek
- Komponenten und Tools des Toolchains
- Toolchain‑Build (Fokus ARM)
- Static vs. dynamic linking
- Cross‑Compiling größerer Projekte — ein Beispiel
Bootloader
- Bootloader verstehen
- Einführung in Device Trees
- Das U‑Boot: Installation, Konfiguration, Hauptbefehle
Kernel booten
- Boot auf BeagleBone Black
- Boot auf QEMU
Eine einfache Linux‑Applikation
- Sehr kurzer Einstieg in POSIX IPC
- Aufbau einer einfachen IPC‑Applikation für den Kurs
Debugging und Core Dumps
- Grundlegendes Debugging
- Remote Debugging
- Wichtige GDB‑Befehle
- Analyse von Core‑Files und Kontrolle CPU‑intensiver Anwendungen
Einführung in Yocto
- Yocto installieren
- Konfigurieren, Bauen und Ausführen
- Layers, BitBake und Recipes
- Images anpassen
Kernel‑Programmierung – Vorschau
- Error numbers und Kernel‑Ausgaben
- task_struct Überblick
- Verkettete Listen im Kernel
- OO‑Mechanismen im Kernel
Einführung in Module
- Triviales Beispiel
- Module kompilieren
- Modules vs. built‑in
- Modul‑Utilities
- Automatisches Laden/Entladen
- Symbole exportieren
Einführung in Device Drivers
- Modules und Device Drivers
- Speicherallokation/‑freigabe
- Datenübertragung zwischen User‑ und Kernel‑Space
- Character devices
- Cache‑Nutzung
- Interrupts und Exceptions
- Deferrable functions
Optionale Module
Vorgeschlagene Erweiterungen (optional)
- systemd‑Service Units und Prozess‑Supervision
- Vertiefte IPC: POSIX Message Queues, Shared Memory, Semaphores
- Dateisysteme: /proc und sysfs‑Grundlagen für App‑Entwickler
- Scheduling und Prioritäten (nice/rtprio) in User‑Space
- gdbserver + VS‑Code‑Remote‑Debugging‑Tipps
- perf und kurzes eBPF‑Intro für Troubleshooting
Kursablauf
- Part 1: 09:00–10:30
- Break: 10:30–10:45
- Part 2: 10:45–12:15
- Lunch break: 12:15–13:15
- Part 3: 13:15–15:15
- Break: 15:15–15:30
- Part 4: 15:30–17:30