Zum 01. September 2024 ging der Geschäftsbetrieb der MicroConsult Microelectronics Consulting & Training GmbH über an die MicroConsult Academy GmbH. Diese wird das Geschäft in vollem Umfang, mit dem bewährten Personal und mit der gewohnten hohen Qualität weiterführen. Ihre Fragen beantworten wir gerne unter kontakt@microconsult.com.

Experience Embedded

Professionelle Schulungen, Beratung und Projektunterstützung

Embedded-Linux-Schulung: Embedded-Echtzeit-Linux vom Bootloader bis zum Realtime-System (Linux-RTOS) - Präsenz-Training

  • Inhalt
     
  • Ziele -
    Ihr Nutzen
  • Teilnehmer
     
  • Voraussetzungen
     

Sie haben die Aufgabe, ein Embedded-Linux-Target aufzubauen?

Wie fange ich damit an? Was benötige ich dazu?

Wie komme ich zu einem echtzeitfähigen System?

Der Aufbau und die Funktionsweise eines Embedded-Linux-Systems mit harten Echtzeiteigenschaften stehen im Mittelpunkt.

Wir beginnen mit dem Aufbau und der Funktionsweise des Buildsystems Yocto. Es wird ein eigener Layer mit eigener Machine, Image und Distro erstellt. Damit ist die Grundlage für ein eigenes Board-Support-Package (BSP) gelegt.

Anschließend wird auf die Komponenten eines Embedded-Linux detailliert eingegangen - angefangen vom ROM-Loader über den Bootloader, den Linux-Kernel mit Device Tree bis hin zum Root-Filesystem.

Wie im Projektalltag werden Konfigurationen angepasst, Patches erstellt und Erweiterungen durchgeführt. All dies passiert immer in dem anfangs erstellten eigenen Yocto-Layer, so dass am Ende das fertig angepasste System im Yocto-Layer zur weiteren Verwendung vorliegt.

Basierend auf dem erstellten System werden Anforderungen, wie beispielsweise Bootzeitoptimierung und Over-The-Air-Update, diskutiert und Lösungen aufgezeigt.

Die verwendeten Tools sind für eine breite Auswahl an Architekturen verfügbar.

Im Seminar wird nur frei zugängliche Open-Source-Software eingesetzt.

Software-Entwickler und Hardware-Entwickler

Sichere Programmierkenntnisse in ANSI-C sowie Linux-Grundlagenkenntnisse sind von Vorteil.

Entwicklungsumgebung

  • Cross-Development Toolchain
  • Erstellung von Toolchain, Bootloader, Kernel und Root-Filesystem
  • Buildsysteme im Vergleich: Aocto, buildroot, Debian-basierend

yocto als Buildsystem

  • Aufbau und Setup von Yocto
  • bitbake als Erstellprogramm
  • Rezepte, Klassen und Konfigurationen
  • Erstellung eigener Layer
  • BSP mit Machine generieren
  • Zielsystem mit Image und Softwareauswahl mit Distro
  • Analyse des Erstellvorganges, Log- und Run-Dateien
  • Diagnose von Buildproblemen
  • wic - Open Embedded Image Creator

Bootloader

  • Linux-Bootprozess vom ROM-Loader bis zum Login-Prompt
  • U-Boot und barebox als Bootloader
  • Konfiguration des Bootloaders
  • Erstellung von Patches und deren Integration in Yocto

Device Tree

  • Hardwarebeschreibung im Device Tree
  • Syntax und Verwendung
  • GPIO-Controller
  • Pin-Multiplexing
  • I2C- und SPI-Bus
  • Erweiterung um eigene Geräte

Linux-Kernel

  • Kernel-Konfiguration
  • Anpassungen für spezifisches Board und Projekt
  • Verwendung von Kernel-Treibern
  • Erstellung von Patches
  • Integration von Anpassungen in Yocto
  • Harte Echtzeit mit Linux (PREEMPT_RT)
  • Threaded Interrupts und Scheduling

Root-Filesystem

  • Init-Dämonen: systemd, System-V, busybox-Init
  • C-Libraries: glibc, uClibc
  • Erstellung und Integration eigener C-Programme
  • Einrichtung von Dämonen für das Target und der speziellen Yocto-Rezepte

Systementwurf

  • Minimalsysteme mit busybox
  • RAM-Disk, initial RAM-Filesystem und initrd
  • NAND und NOR mit MTD-Treibern
  • Flash-Dateisysteme (UBIFS, JFFS2)
  • Managed (FTL) Flash mit ext4
  • Read-Only mit squashfs und Schreiben in overlayfs
  • Reproduzierbarer Erstellvorgang
  • Messung und Optimierung der Bootzeiten
  • System-Update Over-The-Air (OTA), Konfiguration in Yocto

Übungen

  • Alle Übungsaufgaben werden auf einem ARM Cortex-A8 (AM-335x) unter Verwendung frei zugänglicher Open-Source-Tools durchgeführt.
  • Zu allen Themenfeldern gibt es praktische Übungen, so dass das Gelernte gleich ausprobiert und vertieft werden kann.
  • Am Ende des Seminars haben die Teilnehmenden ein komplettes Embedded-Echtzeit-Linux mit Yocto erstellt und dieses individuell angepasst.

Im Preis enthalten:
Mittagessen, Getränke, Trainingsunterlagen und Ihr Teilnahmezertifikat


ALL INCLUSIVE!

Verwandte Trainings

Linux-Schulung: Systemprogrammierung - Präsenz-Training
Anmeldecode: LIN-SYS

Embedded-Linux-Architektur: Kernel-Treiberentwicklung - Präsenz-Training
Anmeldecode: LIN-AR

Embedded-Linux für Test und Support - Präsenz-Training
Anmeldecode: LIN-T

Yocto Schulung: Grundlagen und Anwendung - Präsenz-Training
Anmeldecode: YOCTO

Embedded-Linux-Softwareentwicklung - Präsenz-Training
Anmeldecode: LIN-SWE

Linux Multithread-/Multicore-Programmierung - Präsenz-Training
Anmeldecode: LIN-MMP

Softwarerecht: Haftungsrisiken beim Einsatz von Embedded-Software und Open-Source-Software - Präsenz-Training
Anmeldecode: SWRECHT

Coaching: (Embedded) Linux-Programmierung
Anmeldecode: C-LIN-PRG

Coaching: Embedded- und Echtzeit-Betriebssysteme, RTOS
Anmeldecode: C-EMB-RTOS


Verwandte Trainings

Präsenz-Training

TerminPreis *Dauer
03.02. – 07.02.20253.300,00 €5 Tage 
21.07. – 25.07.20253.300,00 €5 Tage 
08.12. – 12.12.20253.300,00 €5 Tage 
Anmeldecode: LIN-RTD
* Preis je Teilnehmer, in Euro zzgl. USt.
> Download Blanko-Anmeldeformular> Trainingsbeschreibung als PDF

Onsite-Training

In maßgeschneiderten Workshops kombinieren wir Ihre konkreten Projektaufgaben mit unserem Trainingsangebot. Dabei berücksichtigen wir Ihre Anforderungen bezüglich Inhalt, Zeit, Ort, Dauer, technischem Umfeld und Vermittlungsmethodik.

Für Ihre Anfrage oder weiterführende Informationen stehen wir Ihnen gern zur Verfügung.

> Trainingsbeschreibung als PDF

Präsenz-Training - Englisch

Dauer
5 Tage  

Coaching

Unsere Coaching-Angebote bieten den großen Vorteil, dass unsere Experten ihr Wissen und ihre Erfahrungen direkt in Ihren Lösungsprozess einbringen und damit unmittelbar zu Ihrem Projekterfolg beitragen.

Coaching: Embedded- und Echtzeit-Betriebssysteme, RTOS

Embedded-Linux-Schulung: Embedded-Echtzeit-Linux vom Bootloader bis zum Realtime-System (Linux-RTOS) - Präsenz-Training

Inhalt

Entwicklungsumgebung

  • Cross-Development Toolchain
  • Erstellung von Toolchain, Bootloader, Kernel und Root-Filesystem
  • Buildsysteme im Vergleich: Aocto, buildroot, Debian-basierend

yocto als Buildsystem

  • Aufbau und Setup von Yocto
  • bitbake als Erstellprogramm
  • Rezepte, Klassen und Konfigurationen
  • Erstellung eigener Layer
  • BSP mit Machine generieren
  • Zielsystem mit Image und Softwareauswahl mit Distro
  • Analyse des Erstellvorganges, Log- und Run-Dateien
  • Diagnose von Buildproblemen
  • wic - Open Embedded Image Creator

Bootloader

  • Linux-Bootprozess vom ROM-Loader bis zum Login-Prompt
  • U-Boot und barebox als Bootloader
  • Konfiguration des Bootloaders
  • Erstellung von Patches und deren Integration in Yocto

Device Tree

  • Hardwarebeschreibung im Device Tree
  • Syntax und Verwendung
  • GPIO-Controller
  • Pin-Multiplexing
  • I2C- und SPI-Bus
  • Erweiterung um eigene Geräte

Linux-Kernel

  • Kernel-Konfiguration
  • Anpassungen für spezifisches Board und Projekt
  • Verwendung von Kernel-Treibern
  • Erstellung von Patches
  • Integration von Anpassungen in Yocto
  • Harte Echtzeit mit Linux (PREEMPT_RT)
  • Threaded Interrupts und Scheduling

Root-Filesystem

  • Init-Dämonen: systemd, System-V, busybox-Init
  • C-Libraries: glibc, uClibc
  • Erstellung und Integration eigener C-Programme
  • Einrichtung von Dämonen für das Target und der speziellen Yocto-Rezepte

Systementwurf

  • Minimalsysteme mit busybox
  • RAM-Disk, initial RAM-Filesystem und initrd
  • NAND und NOR mit MTD-Treibern
  • Flash-Dateisysteme (UBIFS, JFFS2)
  • Managed (FTL) Flash mit ext4
  • Read-Only mit squashfs und Schreiben in overlayfs
  • Reproduzierbarer Erstellvorgang
  • Messung und Optimierung der Bootzeiten
  • System-Update Over-The-Air (OTA), Konfiguration in Yocto

Übungen

  • Alle Übungsaufgaben werden auf einem ARM Cortex-A8 (AM-335x) unter Verwendung frei zugänglicher Open-Source-Tools durchgeführt.
  • Zu allen Themenfeldern gibt es praktische Übungen, so dass das Gelernte gleich ausprobiert und vertieft werden kann.
  • Am Ende des Seminars haben die Teilnehmenden ein komplettes Embedded-Echtzeit-Linux mit Yocto erstellt und dieses individuell angepasst.