5 tägiges Training in Mainz
Systemprogrammierung und Echtzeit mit Embedded Linux
Agenda
In diesem 5-tägigem Kurs lernen Sie den Umgang mit Embedded-Linux kennen und sind in der Lage Software dafür zu entwickeln.
Alle Übungen werden direkt auf dem Embedded-Board AM335x durchgeführt. Die Teilnehmer erhalten das Embedded-Board sowie die USB-Festplatte mit Linux-Installation, welche im Seminar verwendet wurde. Dadurch kann das Gelernte auch nach dem Seminar exakt nachvollzogen werden.
Zum Referent
Andreas Klinger, IT-Klinger
ist seit 1998 Trainer und Entwickler im Bereich der systemnahen Softwareentwicklung mit den Schwerpunkten Treiberentwicklung, Embedded-Linux und Echtzeit. Als Spezialist für Linux beschäftigt er sich mit dem internen Aufbau des Kernels, den Systemmechanismen sowie vor allem mit deren Einsatz in Embedded-Systemen.
Er wurde 2011, 2014 und 2018 von den Besuchern des Embedded-Software-Engineering-Kongresses mit dem Speaker Award Publikumspreis ausgezeichnet. Seine Fachkompetenz hat er mit einer ganzen Reihe an Fachartikeln in der Elektronik-Praxis und im ESE-Report genauso unter Beweis gestellt wie mit einer ganzen Reihe an Commits für den Linux-Kernel.
Voraussetzungen
- Sicherheit im Umgang mit der Shell
- gute Programmierkenntnisse in C
Preis pro Person beträgt 1.995€ netto inkl. phyBOARD-Wega, Netzteil, SD Karte.
Mindestteilnehmerzahl von 4 Personen
Wählen Sie unten den für Sie passenden Zeitraum und melden Sie sich zum Online-Training an.
Beschreibung:
- Erstellung von systemnahen Programmen für Embedded-Linux-Systeme
- Funktionsweise der Linux-API und deren Hintergründe werden eingehend besprochen
- Tracen von Anwendungen auf Embedded-Linux-Systemen
- Identifizieren von Latenzen und Bottlenecks
- Kennenlernen des Aufbaus und der Funktionsweise von Echtzeit-Linux mit dem RT-Preemption-Patch
- Besonderheiten bei der Entwicklung von Echtzeit-Software
Agenda:
- Aufbau des Linux-Kernels, Syscall-Schnittstelle
- Verwendung von Dateien: open, read, write
- blockierendes Verhalten und poll
- Memory-Mapping mit mmap
- Prozesse und Signale
- Interprozess-Kommunikation: Message-Queue,
Semaphore, Shared-Memory - Multithreading, Posix-Threads, Mutexe, Barriers
- Posix-Timer
- Tracing-Infrastruktur im Linux-Kernel, ftrace
- Verwendung von trace-cmd, kernelshark und perf
- Tracing-Events, Trace-printk, Tracing-Marker
- Tracen von Scheduler, Interrupts, Timer, Netzwerk, GPIO, I2C, SPI
- Messung von Latenzen
- Verwendung von kprobe und uprobe
- uftrace
- Was bedeutet Echtzeit?
- Scheduling-Modell von Linux: RT-, Deadline-, Batch- und Idle-Tasks
- Besonderheiten des RT-Patch; Threading von Interrupts
- Synchronisierung und PI-Mutex• Latenzzeiten messen und Systemlast generieren
- Anwendungsentwicklung für Echtzeit-Systeme
- Warten auf Events, Page-Faults, Priority-Inversion
Weitere interessante Themen: