Edocti Training
RTOS und Echtzeitprogrammierung in der Praxis
Geplante Sessions
Beginn:
03.11.2026
, 4 Tage
€ 550
Anmelden
Fähigkeiten, die Sie lernen werden
RTOS-Architektur
Task-Scheduling
Multithreading & Sync
POSIX IPC
QNX Momentics
Multicore-Optimierung
Latenz-Kontrolle
Hardware Deployment
Curriculum
Praktische RTOS‑Einführung
- Zeitgetriggerte Embedded‑Systeme
- Einführung in RTOS
- Scheduler: Haupttechniken; Priority Inheritance; Stack‑Sharing
- Einfache Scheduler‑Implementierungen zum Verständnis von Datenstrukturen und Context Switching
- Grundregeln für Echtzeitanwendungen (Dos and Don'ts)
Das erste QNX‑Projekt
- Producer–Consumer mit Timeout‑Garantien in Momentics implementieren
- Ausführen, auf das Target kopieren, debuggen, profilieren
- Grundlegende QNX‑Befehle und Partitioning
- Ziel: mit der QNX‑Entwicklungsumgebung vertraut werden
Die Neutrino‑Architektur
- Überblick über zentrale Komponenten (Inhaltsverzeichnis für die vertieften Module)
Die INTEGRITY‑RTOS‑Architektur
- Kurzes Modul mit besonderen INTEGRITY‑Merkmalen
Threads und Prozesse
- Prozesse vs. Threads; Erstellung
- Thread‑Synchronisation: joins, mutexes, semaphores, condition variables, read‑write locks, sleepon locks, barriers
- Wartezeiten steuern (Timeouts, absolut vs. relativ)
- QNX Thread Pools
Zeit, Timer und Uhren
- Zentrale Datenstrukturen für Timekeeping
- Kernel‑Zeit: periodischer Betrieb, Clock Ticks
- Timer für zeitgetriggerte Anwendungen
- Kernel‑Timeouts und Wartezustände
IPC‑Programmierung
- POSIX IPC: Datentransfer und Shared Memory
- Synchronisation: semaphores, events, signals, file locks, named mutexes
- Neutrino‑spezifische IPC
Multicore‑Themen
- Anwendungsdesign für Multicore
- Scheduling und Interrupts auf Multicore
- Processor Affinity
- Inter‑Core‑Synchronisation
Eine QNX‑Image erstellen
- QNX‑Image für BeagleBone bauen und anpassen
Anwendung: Sensornetz mit Echtzeit‑Constraints
- Teamarbeit: Stern‑Topologie, Datenverarbeitung
- Echtzeit‑Constraints über das Netzwerk
Optionale Module
Erweiterte Echtzeit‑Themen (optional)
- Scheduling‑Theorie: Rate‑Monotonic, Deadline‑Monotonic, EDF; Response‑Time‑Analyse
- Ressourcenzugriffs‑Protokolle: Priority Inheritance vs. Priority Ceiling; begrenzte Blockierung
- Latenz‑ und Jitter‑Messung: cyclictest; High‑Res‑Timer; Clock‑Auswahl
- Tracing und Profiling: LTTng, perf, ftrace; Flame Graphs; systemweite Timing‑Diagramme
- Lock‑freie Queues und Ringpuffer für ISR ↔ Main; Memory Barriers; Cache‑Effekte
- Interrupt‑Affinity, CPU‑Isolation und vorhersagbares Multicore‑Verhalten
- DMA und Zero‑Copy; Determinismus von I/O
- Zeitsynchronisation für verteilte RT‑Systeme: PTP/IEEE‑1588
- Safety und Coding‑Standards: MISRA C, Defensive Programmierung, statische Analyse
- QNX‑Spezifika: Adaptive Partitioning, SchedFIFO/SchedRR/Sporadic Server, Pulses, Channels
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