In diesem Kurs erlernen erfahrene Programmierer die Entwicklung von Gerätetreibern für Linux-Systeme und entwickeln ein grundlegendes Verständnis des Linux-Kernels.
Der Kurs beleuchtet die verschiedenen Arten von Gerätetreibern in Linux und stellt geeignete APIs für die Programmierung eines Gerätetreibers vor. Praktische Übungen auf ARM-Hardware veranschaulichen die Vorgehensweisen, z.B. Cross-Compiling und Treiberentwicklung für ein embedded Target. Im Kurspreis ist für jeden Teilnehmer ein Development Kit enthalten, um den Test von Kernel-Treibern mittels TFTP und NFSroot zu verdeutlichen.
Neben Kernel und Algorithmen werden hauptsächlich die Funktionen im Detail behandelt, die zumeist in Gerätetreibern zum Einsatz kommen. Themen wie Scheduling, Speicherverwaltung etc. werden in einem weiterführenden Kurs ausführlich beleuchtet.
Voraussetzungen
Kenntnisse der wesentlichen Kernel-Schnittstellen und Techniken, wie dem Compilieren und Schreiben bzw. Load und Unload von Modulen, die Anwendung von Synchronisationsfunktionen sowie die Grundlagen von Speicherzuweisung und -verwaltung wie im Kurs Linux-Systemprogrammierung vermittelt.
Inhalt
- Einführung
- Überblick
- Cross-Development-Toolkette
- Aufbau eines Target-Entwicklungsboards
- Booten eines Target-Entwicklungsboards über Ethernet
- Konfigurieren, Compilieren und Booten des Kernels
- Gerätetreiber
- Module und Gerätetreiber
- Speicherverwaltung und -zuweisung
- Zeichenorientierte Geräte
- Kernel-Funktionen
- Übertragung zwischen User- und Kernel-Space
- Plattform-Treiber
- Gerätebäume
- Interrupts und Exceptions
- Zeitmessungen
- Kernel-Timer
- ioctls
- Unified Device Model und sysfs
- Firmware
- Schlafen und Warteschlangen
- Interruptbehandlung: verzögerte Funktionen und Benutzer-Treiber
- Direct Memory Access (DMA)
- Speichertechnologien
- USB-Treiber
** These sections may be considered in part or in whole as optional. They contain either background reference material, specialized topics, or advanced subjects. The instructor may choose to cover or not cover them depending on classroom experience and time constraints.
Kurszeiten
Wer möchte, reist bis 22 Uhr am Vortag an und nutzt den Abend bereits zum Fachsimpeln am Kamin oder im Park.
An Kurstagen gibt es bei uns ab 8 Uhr Frühstück.
Unsere Kurse beginnen um 9 Uhr und enden um 18 Uhr. Dieser Kurs endet am letzten Tag um 16:00 Uhr.
Neben den kleinen Pausen gibt es eine Stunde Mittagspause mit leckerem, frisch in unserer Küche zubereitetem Essen.
Nach der Schulung anschließend Abendessen und Angebote für Fachsimpeln, Ausflüge uvm. Wir schaffen eine Atmosphäre, in der Fachleute sich ungezwungen austauschen. Wer das nicht will, wird zu nichts gezwungen und findet auch jederzeit Ruhe.
Termine und Anmeldung
-
10. März 2025, 4 Tage
LFD435 Entwicklung von Gerätetreibern für embedded Linux-Systeme anmelden -
17. November 2025, 4 Tage
LFD435 Entwicklung von Gerätetreibern für embedded Linux-Systeme anmelden
Haben Sie einen anderen Wunschtermin?
Termine ähnlicher Kurse
- 07.01. - 10.01.25 KW 02 **
Embedded Linux - 10.03. - 13.03.25 KW 11
Linux Kernel Treiber - 07.07. - 10.07.25 KW 28
Embedded Linux - 15.09. - 18.09.25 KW 38
Embedded Linux - 17.11. - 20.11.25 KW 47
Linux Kernel Treiber