Einführung in Embedded Linux & Real-Time, Vogelperspektive des Yocto Projekts

Einführung in Embedded und Echtzeit: Das Yocto-Projekt im Überblick

4-Tage-Kurs

Der Kursinhalt kann auf Ihre Bedürfnisse und Ziele zugeschnitten werden, und wenn es die Zeit erlaubt, kann während der Schulung auch eine Beratung erfolgen. Bitte klicken Sie auf die öffentliche Registerkarte, um die öffentlichen Sitzungen zu sehen.

Privat online
Vor Ort in Ihrem Unternehmen
Wir werden Ihre E-Mail niemals an Dritte weitergeben.
Viertel wählen Quartal Status Zugang Lieferung Standort Sprache Zeitzone Buchen bis
4. Quartal 2026 privat remote virtuell Deutsch/Englisch (noch zu definieren) UTC+2 (noch zu definieren) Jan 01, 2027

Inhalt wie unten beschrieben. Ab drei Teilnehmern aus demselben Unternehmen, schauen Sie sich bitte unsere privaten Sitzungen an.

Öffentlich online
Öffentlicher Workshop im Klassenzimmer
Wir werden Ihre E-Mail niemals an Dritte weitergeben.
Datum auswählen Datum Status Zugang Lieferung Standort Sprache Zeitzone Buchen bis
01. Dezember 2026 öffentlich remote virtuell Deutsch/Englisch (noch zu definieren) UTC+2 27. Oktober 2026

Ein grundlegender Überblick über Embedded , Echtzeit-Linux sowie das Yocto Project® aus der Vogelperspektive.

Ziele des Kurses

Wir werden uns mit den folgenden Themen befassen:

  • Welche Komponenten werden für den Aufbau eines Embedded-Linux-Systems benötigt?
  • Woher bekommt man sie und wie kann man sie konfigurieren/erstellen/installieren?
  • Wo kann man Hilfe bekommen?
  • Wie sieht es mit Lizenzen aus?
  • Was ist das Yocto-Projekt aus der Vogelperspektive?
  • Wie fügt man Real-Time zu Linux hinzu?

Durch praktische Übungen erwerben Sie die notwendigen praktischen Kenntnisse, um ein Embedded-Linux-System mit Mainline-Komponenten und Echtzeit-Patches zu konfigurieren bzw. aufzubauen.

Beschreibung

Dieser viertägige Schulungskurs vermittelt anhand von praktischen Übungen in Verbindung mit theoretischem Unterricht einige grundlegende Konzepte von Embedded .
Die praktischen Übungen werden auf dem Host-Rechner mit einem Yocto Project® SDK sowie auf Zielhardware (z. B. i.mx8) durchgeführt. Der gesamte Workshop ist darauf ausgelegt, Sie schnell auf den neuesten Stand zu bringen. Die Konzepte und Befehle, die für den effektiven Einsatz von Embedded erforderlich sind, werden durch eine Kombination aus Theorie und praktischen Übungen vermittelt. Erfinden Sie das Rad nicht neu, sondern lernen Sie von einem erfahrenen Trainer und nehmen Sie das neu erworbene Wissen über Embedded sowie die Fähigkeit, es effektiv in Ihre eigenen Embedded-Entwicklungsprojekte zu integrieren, mit nach Hause.

Voraussetzungen

  • Grundlegende Vertrautheit mit der Verwendung eines Linux-Systems (z. B. Ubuntu) als Endbenutzer im Benutzerbereich
  • Grundlegende Vertrautheit mit einer Befehlszeilen-Shell
  • Vertrautheit mit eingebetteten C-Konzepten und Programmierung
  • Fähigkeit zur Entwicklung von Software unter Verwendung der C-Syntax
  • Grundkenntnisse über eingebettete Prozessoren und Entwicklungsboards
  • …und keine Scheu, mehr darüber zu erfahren

Kurs-Fahrplan

Wer sollte teilnehmen?

Projektmanager, Software- und Hardwareentwickler, Systemingenieure, Techniker und Technikinteressierte versuchen, so schnell wie möglich zu verstehen, wie Embedded Linux funktioniert. Sie müssen Linux einsetzen oder haben die Möglichkeit zu entscheiden, ob dessen Einsatz sinnvoll ist oder nicht. Vielleicht nutzen Sie Embedded bereits, sind sich aber nicht ganz sicher, ob Sie alles richtig machen. Oder Sie verwenden derzeit ein anderes Betriebssystem und möchten herausfinden, ob Linux möglicherweise kostengünstiger wäre.

Gliederung des Kurses

Tag 1

Einführung

  • Geschichte von Unix/Linux | Lizenzvergabe | Normen | Unix-Philosophie

Embedded Besonderheiten

  • Linux auf dem Desktop im Vergleich zu Linux in einem eingebetteten System | Cross-/Native Toolchains | Vorgefertigte Toolchains | Build-Systeme | C-Bibliotheken

Evaluation Board

  • Wie startet Linux auf einem PC und auf dem Evaluierungsboard? | SD-Karten-Partitionen | Schau zu, wie es hochfährt.

Yocto Einführung

  • Was ist Yocto? | Was ist das Yocto Project®? (Merkmale/Herausforderungen) | Einige Werkzeuge unter dem Dach des Yocto Project® (Poky | BitBake | OE-Core | Metadaten) | Warum sollten Sie das Yocto Project® verwenden?

Der Yocto Project® Arbeitsablauf

  • Intro
  • Arbeitsablauf | OE-Architektur
  • Konfiguration (Benutzer | Metadaten (Rezepte) | Maschine (BSP) | Distribution/Policy)
  • Eigenschaften | Versionierung von Rezepten | Layers
  • Quellen
  • Bauen (Quellenabruf | Patching | Konfigurieren/Kompilieren/Staging | SSTATE | Pseudo | recipetool | Beispiele von Rezepten | PACKAGECONFIG | Pakete und ihr Inhalt | Output-Analyse/Verpackung | Image Generation | SDK-Erzeugung) | Tasks

Tag 2

Was wird benötigt...

  • Gastgeber
    • Toolkit
      • Das Yocto-Projekt® | Die Yocto Project® Build-Umgebung | Installieren Sie das Yocto Project® SDK
    • Vorbereitung der SD-Karte | Terminal-Emulation
      • screen | byobu | minicom
    • Server
      • DHCP | tftp | NFS
    • Root-Dateisysteme
  • Zielsystem
    • git | u-boot
      • Skripting | schickes Zeug | checkout | Konfiguration | bauen | installieren
    • Kernel
      • checkout | Konfiguration: kconfig | Erstellen: kbuild | Kernel-Module | installieren
    • Flacher Gerätebaum (fdt)
      • Untersuchen wir den flachen Gerätebaum | bauen | installieren

Anpassungen (optional)

  • Anpassungen: Das System hängt sich auf | Pseudo tty | getty | runlevel | statische IP
  • Init: Sys-V | Verschiedene Optionen | systemd | bootgraph | bootchart

Tag 3

Kernel-Module

  • init/exit | ⁣Lizenzierung⁣ | tainted Modul/Kernel | EXPORT_SYMBOL | out of tree .ko makefile
  • module-init-tools
  • Modul in den Kernel-Baum einbinden
  • Parameterübergabe

Character Driver

  • Gerätedateien | Gerätetypen | Geräteknoten Major/Minor | Kernel-Treiber-Schnittstelle
  • Gerätetreiber: Intro | Anmeldung | Initialisierung | Öffnen/Freigeben
  • Miscellaneous Character Drivers

Debugging im Userspace

  • Einfache Werkzeuge | Erweiterte Tools | Was ist ein Debugger?
  • gdb: gdb auf dem Zielsystem⁣ | gdb remote debugging

Kernel-Debugging (optional)

  • kgdb/kdb + agent-proxy | JTAG

Tag 4

Profilierung/Verfolgung

  • Profiling/Tracing-Werkzeuge: strace | system timers | gprof | gcov | ftrace/kernelshark | systemtap | perf | LTTng
  • top und ähnliche Werkzeuge: top | latencytop | powertop | powerdebug
  • crash: gdb auf Steroiden

Real-Time

  • Voraussetzungen
    • interrupts | ablaufinvarianter Code
  • Echtzeit-Intro
    • Was ist Real-Time? | Was ist harte Real-Time?
  • Echtzeit-Linux
    • Hypervisor | Doppelter Kernel | Vollständig präemptiver Kernel
  • Abgestuftes Echtzeitverhalten
    • explizit/implizit preemption points | Echtzeit-Preemption-Patch | vollständig präemptiver Kernel | Harte Echtzeit-Erweiterungen
  • Dualer Kernel: Adeos/Xenomai
    • Adeos Patch | Xenomai | patch/config/build kernel | auf dem Zielsystem testen
  • Echtzeit-Mythen

Kursbroschüre (pdf)

Was die Kunden sagen

Reliable Embedded Systems
Überblick über den Datenschutz

Diese Website verwendet Cookies, damit wir Ihnen die bestmögliche Benutzererfahrung bieten können. Cookie-Informationen werden in Ihrem Browser gespeichert und dienen dazu, Sie wiederzuerkennen, wenn Sie auf unsere Website zurückkehren, und unserem Team zu helfen, zu verstehen, welche Bereiche der Website Sie am interessantesten und nützlichsten finden.