Aufbau und Verwendung des RT-Preemption-Patches
Die Anforderungen an Linux-Systeme steigen und damit werden auch immer häufiger Forderungen nach Echtzeitfähigkeit des Betriebssystems gestellt. Inzwischen sind große Teile des RT-Preemption-Patches in den Mainstream-Kernel integriert und weitere Teile werden folgen. Dadurch ist es für den Anwender einfach geworden, auch nachträglich auf Echtzeit umzustellen ohne das ganze Betriebssystem austauschen zu müssen.
In diesem Kurs lernen Sie, aus welchen Komponenten ein Echtzeit-Linux-System besteht, wie die Anforderungen an ein Echtzeit-Betriebssystem erfüllt werden und wie ein an das Projekt angepasstes System erstellt wird.
Der Kursinhalt bezieht sich auf den Mainstream-Linux-Kernel sowie auf den RT-Preemption-Patch.
Die Übungen werden auf einem ARM-basierten Embedded-Board durchgeführt. Entsprechende Boards sowie die Cross-Development-Toolchain werden zur Verfügung gestellt.
Dieser Kurs kann auch zusammen mit dem Kurs Linux Treiber kombiniert und innerhalb von 5 Tagen durchgeführt werden: Linux Treiber und RT
Trainer und Dozenten
Andreas Klinger ist selbständiger Trainer und Entwickler. Schwerpunkte seiner Arbeit sind Linux Kerneltreiber sowie Embedded- und Echtzeit-Linux.
Als Autor von Fachartikeln und als Referent auf Kongressen vermittelt er Know-How zu Open-Source.
Voraussetzungen
Entwickler, System-Designer und Projektverantwortliche
Die Inhalte unseres Kurses Linux-Treiberentwicklung sowie fundiertes Wissen in der Programmiersprache C werden vorausgesetzt
Inhalt
Tracing
- Function-Trace-Framework (ftrace), Timing-Analyse, Latenzzeiten
- trace-cmd und kernelshark
Hochauflösende Timer in Linux (hrtimer)
- klassische Linux-Timer; Timer-Wheel und jiffies
- hrtimer-Framework, Architektur und Funktionsweise
- Verwendung in Kernel-Treibern
harte Echtzeit mit dem RT-Preemption-Patch
- Scheduling-Klassen: RT-Task, Deadline-Task, Batch- und Idle-Task
- Konfiguration und Installation
- threaded Interrupts und SoftIRQ's
- Spezialfälle: kaskadierte GPIO's, Timer-Events
- Prioritätsinversion, RT-Mutex, annotated Spin-Locks
- Bewertung des Echtzeitverhaltens, Latenzzeitmessung, Messergebnisse
- Alternative Open-Source-Echtzeit-Varianten zum Vergleich: RTAI und Xenomai
- klassische Linux-Timer; Timer-Wheel und jiffies
- hrtimer-Framework, Architektur und Funktionsweise
- Verwendung in Kernel-Treibern