Wählen Sie Ihre Sprache aus
Embedded-Linux-Schulung
Mehr als 2 Millionen Studierende weltweit

Embedded-Linux-Schulung

4,3

Meistern Sie jede Schicht von Embedded Linux, vom Bootloader und Kernel bis zum Root-Dateisystem und den Gerätetreibern. Dieser Kurs vermittelt Ihnen die praktischen Fähigkeiten, um produktionsreife eingebettete Linux-Systeme auf echter Hardware zu erstellen, zu konfigurieren und einzusetzen. Egal, ob Sie in die Embedded-Entwicklung einsteigen oder Ihre Expertise ausbauen möchten – dies ist der umfassendste technische Weg, der Ihnen zur Verfügung steht.

Dedika für Unternehmen

Was Sie lernen werden:

Sie lernen, wie Sie Cross-Compilation-Toolchains einrichten, den Linux-Kernel konfigurieren und bauen und minimale Root-Dateisysteme mit BusyBox erstellen. Sie arbeiten mit U-Boot, um die gesamte eingebettete Boot-Sequenz zu verwalten, und schreiben Linux-Gerätetreiber für GPIO, I2C, SPI und interruptgesteuerte Peripheriegeräte. Der Kurs behandelt das Yocto Project und Buildroot zur automatisierten Image-Erstellung sowie Techniken zur Systemoptimierung, einschließlich Reduzierung der Bootzeit, Minimierung des Speicherbedarfs und Sicherheitshärtung. Fortgeschrittene Themen umfassen Echtzeit-Linux mit PREEMPT_RT, Remote-Debugging mit GDB und Over-the-Air-Update-Strategien für Produktionsumgebungen.

Wie Sie praxisnah lernen Embedded-Linux-Schulung

Wie Sie üben Embedded-Linux-Schulung

Für Unternehmen, die ihr Team schulen möchten

Bei Dedika für Unternehmen enthält der Kurs Übungen und Beispiele, die auf Ihr eigenes Geschäft und die Bedürfnisse Ihres Unternehmens zugeschnitten sind.

Hier klicken

Kursinhalt

8 Kapitel • 38 LektionenDauer zwischen 4 und 360 Stunden (Sie entscheiden)

Kapitel 1Details anzeigen

Linux- und Embedded-Systems-Grundlagen

  • Lektion 1 • Grundlagen der Linux-Befehlszeile

    Behandelt Shell-Navigation, Dateiverwaltung und Befehle zur Prozesssteuerung. Diese Fähigkeiten sind Voraussetzungen für alle praktischen Laborarbeiten im Kurs.

  • Lektion 2 • Linux-Kernel und Betriebssystemarchitektur

    Erklärt die Rolle des Linux-Kernels, sein monolithisches Design und die Trennung von Benutzer- und Kernel-Space. Bietet Kontext für spätere Kernel-Konfigurationsarbeiten.

  • Lektion 3 • Kernkonzepte eingebetteter Systeme

    Definiert eingebettete Systeme, ihre Einschränkungen und wie sie sich von Allzweckcomputern unterscheiden. Etabliert das im gesamten Kurs verwendete Vokabular.

  • Lektion 4 • Überblick über eingebettete Hardware

    Bietet einen Überblick über gängige eingebettete Prozessoren, Speichertypen und Peripheriebusse. Verankert Softwareentscheidungen in den Hardware-Realitäten, die in späteren Kapiteln behandelt werden.

Kapitel 2Details anzeigen

Cross-Kompilierung und Toolchain-Einrichtung

  • Lektion 1 • Toolchain-Validierung und Debugging

    Überprüft die Korrektheit der Toolchain mithilfe von Test-Binärdateien und readelf-Inspektion. Verhindert häufige Fehlkonfigurationsfehler vor dem Kernel- und Rootfs-Build.

  • Lektion 2 • Toolchain-Architektur und -Komponenten

    Identifiziert Binutils, Compiler, C-Bibliothek und Debugger als Toolchain-Komponenten. Erklärt die Host-Ziel-Beziehungen, die für die Cross-Kompilierung zentral sind.

  • Lektion 3 • Cross-Kompilieren von Anwendungen

    Demonstriert das Kompilieren von C- und C++-Programmen für ein Ziel mithilfe der Cross-Toolchain. Führt Cross-Kompilierungsmuster mit Makefile und CMake ein.

  • Lektion 4 • Erstellen einer Toolchain mit Crosstool-NG

    Leitet die Konfiguration und den Build einer benutzerdefinierten Toolchain mit Crosstool-NG an. Erzeugt ein reproduzierbares Toolchain-Artefakt, das in nachfolgenden Laboren verwendet wird.

Kapitel 3Details anzeigen

Bootloader-Konzepte und U-Boot

  • Lektion 1 • Flash- und Wiederherstellungsverfahren

    Behandelt das Schreiben von Bootloader-Images auf NAND-, NOR- und eMMC-Speicher. Beinhaltet Wiederherstellungsstrategien, wenn ein Board nicht bootet.

  • Lektion 2 • Konfigurieren und Bauen von U-Boot

    Führt durch die Auswahl einer defconfig, das Anpassen von Einstellungen und das Cross-Kompilieren von U-Boot. Erzeugt eine Bootloader-Binärdatei, die zum Flashen auf das Ziel bereit ist.

  • Lektion 3 • U-Boot-Shell und Boot-Skripte

    Verwendet die interaktive U-Boot-Shell, um Images zu laden und Boot-Argumente zu setzen. Automatisiert den Bootvorgang mit Skripten, die in der Umgebung oder auf Speichermedien gespeichert sind.

  • Lektion 4 • Eingebettete Boot-Sequenz

    Verfolgt die Einschaltsequenz vom ROM-Code über den Bootloader bis zum Kernel. Etabliert das geschichtete Boot-Modell, auf das in allen nachfolgenden bootbezogenen Arbeiten Bezug genommen wird.

  • Lektion 5 • U-Boot-Architektur und Quellcode

    Untersucht die Verzeichnisstruktur von U-Boot, Board-Support-Packages und das Kconfig-System. Bereitet die Teilnehmer darauf vor, sicher im U-Boot-Quellcode zu navigieren und ihn zu ändern.

Kapitel 4Details anzeigen

Linux-Kernel-Konfiguration und -Build

  • Lektion 1 • Kernel-Quellcode und Versionsverwaltung

    Stellt Kernel.org-Releases, stabile Zweige und Hersteller-Kernel vor. Leitet das effektive Klonen und Navigieren im Kernel-Quellcodebaum an.

  • Lektion 2 • Kernel-Build-System und Ausgabe

    Erklärt das Kbuild-System, Cross-Kompilierungs-Flags und Ausgabeartefakte. Die Teilnehmer bauen zImage, Image und Device-Tree-Blobs für ihr Ziel.

  • Lektion 3 • Kernel-Konfiguration mit Kconfig

    Verwendet menuconfig und defconfig-Dateien, um benötigte Treiber und Subsysteme zu aktivieren. Lehrt die systematische Reduzierung der Kernel-Größe für eingebettete Ziele.

  • Lektion 4 • Kernel-Module und dynamisches Laden

    Behandelt Out-of-Tree- und In-Tree-Modul-Builds, insmod, modprobe und depmod. Ermöglicht das Laden von Treibern zur Laufzeit ohne Neubau des gesamten Kernels.

  • Lektion 5 • Deployment und Testen des Kernels

    Überträgt das Kernel-Image per TFTP oder SD-Karte auf das Ziel und bootet es. Validiert den Boot-Erfolg durch Analyse der seriellen Konsolenausgabe.

Kapitel 5Details anzeigen

Erstellung des Root-Dateisystems

  • Lektion 1 • Erstellen eines minimalen Rootfs mit BusyBox

    Konfiguriert und cross-kompiliert BusyBox, um Kern-Dienstprogramme in einer einzigen Binärdatei bereitzustellen. Erzeugt ein eigenständiges Rootfs-Gerüst für das Ziel-Board.

  • Lektion 2 • Bibliotheksverwaltung und Abhängigkeiten

    Identifiziert gemeinsam genutzte Bibliotheksabhängigkeiten und kopiert sie in den Rootfs-Staging-Bereich. Verhindert Fehler aufgrund fehlender Bibliotheken zur Laufzeit auf dem Ziel.

  • Lektion 3 • Init-Systeme und Systemstart

    Vergleicht BusyBox init, SysVinit und systemd für eingebettete Anwendungsfälle. Konfiguriert inittab und rcS-Skripte, um Dienste beim Booten zu starten.

  • Lektion 4 • Root-Dateisystemstruktur und Standards

    Erklärt den Filesystem Hierarchy Standard und obligatorische Verzeichnisse für den Linux-Boot. Liefert die strukturelle Blaupause für alle Rootfs-Erstellungsübungen.

  • Lektion 5 • Paketieren und Deployment des Rootfs

    Erstellt cpio initramfs-, ext4- und squashfs-Images aus dem Staging-Verzeichnis. Deployt und mountet das Rootfs auf dem Ziel-Board.

Kapitel 6Details anzeigen

Build-Systeme: Yocto Project und Buildroot

  • Lektion 1 • Buildroot-Architektur und -Workflow

    Führt den menuconfig-gesteuerten Workflow von Buildroot zur Generierung von Toolchain, Kernel und Rootfs ein. Demonstriert schnelles Prototyping für ressourcenbeschränkte Projekte.

  • Lektion 2 • Kernkonzepte des Yocto Projects

    Erklärt Layer, Rezepte, BitBake und die Architektur des OpenEmbedded-Build-Systems. Etabliert das mentale Modell, das für alle Yocto-Anpassungsarbeiten erforderlich ist.

  • Lektion 3 • Erstellen und Anpassen von Yocto-Layern

    Erstellt einen benutzerdefinierten Layer, schreibt ein Rezept und fügt es einem Yocto-Image hinzu. Demonstriert das in produktiven Yocto-Projekten verwendete Erweiterbarkeitsmuster.

  • Lektion 4 • Anpassen von Buildroot-Paketen

    Erstellt benutzerdefinierte Paketrezepte und Overlays, um proprietäre Software zum Image hinzuzufügen. Erweitert Buildroot über seinen Standardpaketsatz hinaus.

  • Lektion 5 • Image-Generierung und SDK-Erstellung

    Erstellt ein vollständig bootfähiges Image und ein Anwendungsentwicklungs-SDK mit Yocto. Ermöglicht Anwendungsentwicklern, die Plattform anzusprechen, ohne das Image neu zu bauen.

Kapitel 7Details anzeigen

Gerätetreiber und Hardwareschnittstellen

  • Lektion 1 • Device Tree und Hardwarebeschreibung

    Erstellt Device-Tree-Quelldateien, um die Hardwaretopologie gegenüber dem Kernel zu beschreiben. Bindet Treiber mithilfe von Compatible Strings und Eigenschaften an Hardware-Knoten.

  • Lektion 2 • Interrupts und DMA in Treibern

    Registriert Interrupt-Handler und konfiguriert DMA-Transfers innerhalb eines Treibers. Adressiert Latenz- und Durchsatzanforderungen, die bei eingebetteten Peripheriegeräten üblich sind.

  • Lektion 3 • Entwicklung von Zeichengerätetreibern

    Implementiert einen Zeichentreiber mit open-, read-, write- und ioctl-Operationen. Demonstriert das vollständige Muster aus Treiberregistrierung und Dateioperationen.

  • Lektion 4 • Grundlagen des Linux-Treibermodells

    Erklärt das Treiber-Gerät-Bus-Modell, kobjects und die sysfs-Repräsentation. Bietet den konzeptionellen Rahmen für die gesamte Treiberentwicklung in diesem Kapitel.

  • Lektion 5 • GPIO-, I2C- und SPI-Treiberschnittstellen

    Verwendet die Kernel-APIs der GPIO-, I2C- und SPI-Subsysteme, um mit Peripheriegeräten zu kommunizieren. Behandelt sowohl In-Kernel-Treiber- als auch Benutzerraum-Zugriffsmethoden über sysfs/chardev.

Kapitel 8Details anzeigen

Systemoptimierung und Produktionshärtung

  • Lektion 1 • Over-the-Air-Update-Strategien

    Implementiert Dual-Bank- und Delta-Update-Mechanismen für sichere Firmware-Updates im Feld. Stellt Rollback-Fähigkeit und Update-Integrität in Produktions-Deployments sicher.

  • Lektion 2 • Sicherheitshärtung für Embedded Linux

    Wendet schreibgeschütztes Rootfs, Secure Boot und Zugriffskontrolle an, um das System zu härten. Reduziert die Angriffsfläche für vernetzte eingebettete Produkte.

  • Lektion 3 • Optimierung des Speicherbedarfs

    Reduziert Kernel-Größe, Rootfs-Größe und Laufzeitspeichernutzung durch systematische Analyse. Wendet Stripping-, Komprimierungs- und Konfigurationsbereinigungstechniken an.

  • Lektion 4 • Messung und Reduzierung der Bootzeit

    Profiliert die Boot-Sequenz mit Bootchart und Kernel-Zeitstempeln, um Engpässe zu finden. Wendet gezielte Optimierungen an, um Ziele im Subsekunden- oder Fast-Boot-Bereich zu erreichen.

  • Lektion 5 • Energieverwaltungstechniken

    Konfiguriert CPU-Frequenzskalierung, Suspend-Zustände und Peripheral Power Gating. Verlängert die Batterielebensdauer und reduziert die Wärmeabgabe in leistungsempfindlichen Designs.

Zertifizierung

Ihr gültiges Abschlusszertifikat

Dieser Kurs ist für Sie geeignet:

  • Firmware-Ingenieur: bereit, von Bare-Metal-MCUs auf Linux-basierte SoCs umzusteigen.

  • Informatikabsolvent: sucht praktische Tiefe in eingebetteten Systemen jenseits des Universitätsstudiums.

  • IoT-Entwickler: benötigt Full-Stack-Kontrolle über die Geräte, auf denen seine Software läuft.

  • Elektronik-Hobbyist: möchte verstehen, was in seinen Einplatinencomputern abläuft.

  • DevOps-Ingenieur: erweitert sein Wissen auf eingebettete Ziele und hardwareintegrierte CI-Pipelines.

  • Karrierewechsler: wechselt von Desktop- oder Web-Software in die Entwicklung eingebetteter Produkte.

Was unsere Lernenden sagen

Ihre Kurse sind perfekt. Ich habe das Jahrespaket erworben und habe endlich die Möglichkeit, verschiedene Themen zu verfolgen, die mich interessieren, ohne die Plattform wechseln zu müssen... ich danke Ihnen für alles, was Sie tun, ich habe Sie bereits anderen Leuten empfohlen...
Giulio Carlo
Giulio CarloStudent für Digitales Marketing
Mir gefällt, wie die Lektionen direkt auf den Punkt kommen und wie ich Kapitel wechseln und Inhalte überspringen kann, die ich nicht brauche.
Mariana Ferres
Mariana FerresStudentin für Fotografie
Mir gefallen die Inhalte und die Art der Präsentation und Transkription der Videos, was den Prozess beschleunigt!
Luciana Alvarenga
Luciana AlvarengaStudentin für Nageldesign
Die Plattform ist schnell und einfach zu bedienen. Die Vielfalt der Inhalte und die ergänzenden Videos helfen sehr beim Lernen.
André Felipe
André FelipeStudent für Prompt Engineering

Wichtige Qualifikationen

FAQ

Wer ist Dedika?

Ist das Zertifikat in Deutschland gültig?

Sind die Kurse kostenlos?

Wie hoch ist der Arbeitsaufwand der Kurse?

Wie sind die Kurse aufgebaut?

Wie funktionieren die Kurse?

Wie lange dauern die Kurse?

Was kostet ein Kurs?

Was ist ein E-Learning- oder Online-Kurs und wie funktioniert er?

PDF-Kurs