Linux Treiber und RT - Architektur des Linux Kernels, Treiber und Echtzeit Entwicklung - Schulung (5 Tage)
Linux Drivers and RT - Architecture of the Linux Kernel, Drivers and Real-time Development
Kurzbeschreibung
Wenn die von Linux im Userspace bereitgestellten Mechanismen in Form der System-API nicht ausreichen und höhere Anforderungen hinsichtlich Timing und Reaktionsverhalten gestellt werden oder der Zugriff auf Hardware-Ressourcen notwendig ist, dann gibt es nur eines: In den Linux-Kernel eintauchen und selber Kernel-Treiber erstellen.
Das dazu notwendige Know-how, insbesondere der im Kernel vorhandenen Mechanismen,sowie deren Zusammenspiel wird in diesem Kurs vermittelt. Nach Abschluss des Kurses sind Sie in der Lage echtzeitfähige Kernel-Treiber zu schreiben, sowie die vom Kernel angebotenen Mechanismen effektiv einzusetzen. 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 Übungsaufgaben werden auf dem Schulungs-Notebook durchgeführt.Fortgeschrittenen Teilnehmer mit Erfahrungen in Embedded-Linux bieten wir die Möglichkeit die Übungen auf einem ARM-basierten Embedded-Board zu machen. Entsprechende Boards, sowie die Cross-Development-Toolchain werden zur Verfügung gestellt.
Voraussetzungen
• Kenntnisse in Linux-Systemprogrammierung
• fundiertes Wissen in der Programmiersprache C wird vorausgesetzt
Seminarinhalt
Gerätetreiber
• virtuelles Filesystem (VFS)
• System-Call-Schnittstelle
• Character-, Block- und Net-Devices, Dateisystem-Treiber
• Aufbau und Funktionsweise von Kernel-Treibern, Datei-Schnittstelle und Device-Nodes
• Kernel-Module, Modul-Parametrisierung
Scheduling
• Scheduling-Klassen: Round-Robin-Verfahren des CFS, RT-Tasks, Batch- und Idle-Tasks
• Task-Varianten: Thread, Kernel-Thread, Workqueue
• SoftIRQ's: Kernel-Timer, Tasklet, Net-Send, Net-Receive
• Synchronisierungsmechanismen: Spin-Lock, Mutex
Speicher-Verwaltung
• virtueller, logischer und physikalischer Adressraum
• Memory-Management-Unit (MMU), Speicherschutzkonzept, Segmentations-Faults
• Allozierung von Kernel-Speicher, atomare Operationen
• Datenaustausch zwischen Userspace und Kernel, Memory-Mapping
Zugriff auf Hardware
• IO-Ports und IO-Memory
• Interrupts, Sekundärreaktionen auf Interrupts
• Subsysteme: USB, PCI
Weiche Echtzeit mit dem Standard-Kernel
• harte und weiche Echtzeitanforderungen; Kriterien für Echtzeitfähigkeit
• Scheduling und Preemption; RT-Tasks, Batch-Tasks, Interrupts und SoftIRQ's
• Synchronisierungsmechanismen: Mutex, Spin-Lock
• Performance-Tuning: CPU-Affinitäten, Kernel-Socket-Server, Memory-Mapping
• Prioritätsinversion, Preemption- und Interrupt-Disabling
Hochauflösende Timer in Linux (hrtimer)
• klassische Linux-Timer; periodische synchrone Timer-Ticks
• hrtimer-Framework, Architektur und Funktionsweise
• Anwendung in Systemfunktionen; Posix-Intervall-Timer; Sleep-Funktionen
• Verwendung in Kernel-Treibern
harte Echtzeit mit dem RT-Preemption-Patch
• virtualisierte Interrupts und SoftIRQ's
• echtzeitfähige Synchronisierung: RT-Mutex, Futex, RCU
• Echtzeit-Tasks im User- und/oder Kernel-Space
• Posix-Threads, Kernel-Threads
• Konfiguration und Installation
• Tracing-Framework (ftrace), Timing-Analyse, Latenzzeiten
• Bewertung des Echtzeitverhaltens; Messergebnisse aus Anwendungen
• Alternative Open-Source-Echtzeit-Varianten zum Vergleich: RTAI und Xenomai
Zielgruppen
• Programmierer / Entwickler
• System-Designer
Preise und Termine
Eine offene Schulung findet in einem unserer Schulungszentren statt.
Dauer: | 5 Tage |
Preis: | 2.572,00 € zzgl. USt. pro Teilnehmer (3.060,68€ inkl. USt.) |
Seminarstandorte: | |
Starttermine: (ortsabhängig) | |
Unterlagen: | zzgl. |
Verpflegung: | zzgl. |
Prüfung/Zertifizierung: | zzgl. |
Eine Firmenschlung kann sowohl bei Ihnen vor Ort als auch in einem unserer Schulungszentren stattfinden.
Dauer: | 5 Tage |
Preis ab: | 1.490,00 € zzgl. USt. pro Tag (1.773,10€ inkl. USt.) |
Schulungszentren: |
|
Starttermin: | individuelle Vereinbarung |
Unterlagen: | zzgl. |
Verpflegung: | zzgl. |
Prüfung/Zertifizierung: | zzgl. |
Software
Linux
Seminarsprache
die Seminarsprache ist deutsch, sofern keine andere Angabe. Englisch ist in aller Regel machbar, andere Seminarsprachen sind möglich, fragen Sie bitte an.