Seminar oreboot QEMU-Emulation, Tests und CI

Seminar / Training

Inhaltsverzeichnis

  • Einordnung
  • Kompetenzziele
  • Seminarinhalte
  • Praxisübungen
  • Methodik
  • Zielgruppe
  • Vorkenntnisse

Einordnung

Das Seminar nutzt QEMU als schnelle Rückkopplung für Build, Bootflow und Regressionstests. Maschinenprofil, Firmwareabbild, serielle Sollmuster, Fehlerfälle, statische Prüfungen, Testmatrix und Artefaktsicherung werden zu einer belastbaren CI-Strecke verbunden.

Kompetenzziele

  • Ein reproduzierbares QEMU-Maschinenprofil für ein oreboot-Ziel erstellen.
  • Bootausgabe in maschinenlesbare Prüfpunkte übersetzen.
  • Positive und negative Startfälle mit Zeitgrenzen automatisieren.
  • Formatierung, Lints, Buildmatrix und Größenkontrollen integrieren.
  • Testartefakte für Regressionen und Reviews nachvollziehbar sichern.

Seminarinhalte

Modul 1: Entwicklungsumgebung und Rust-Toolchain

  1. Schritt 1: Werkzeugbestand erfassen

    Rust-Toolchain, Cross-Compiler, Binutils, Device-Tree-Compiler, Emulator, serielle Werkzeuge und Flash-Hilfen werden versioniert dokumentiert.

  2. Schritt 2: Zielplattform einrichten

    Target-Spezifikation, Runner, Linker, Rust-Quellenkomponenten und benötigte Cargo-Erweiterungen werden reproduzierbar konfiguriert.

  3. Schritt 3: Build-Umgebung isolieren

    Pfadabhängigkeiten, Umgebungsvariablen, Cache-Verhalten und lokale Werkzeuge werden so festgelegt, dass mehrere Arbeitsplätze gleiche Artefakte erzeugen.

  4. Schritt 4: Diagnose durchführen

    Fehlende Targets, Linkerfehler, inkompatible Nightly-Funktionen und Werkzeugsuchpfade werden anhand eines systematischen Prüfablaufs eingegrenzt.

Modul 2: Build, Artefakte und Reproduzierbarkeit

  1. Schritt 1: Boardziel auswählen

    Mainboard, Architektur, Feature-Satz, Payload und Ausgabeziel werden in einem nachvollziehbaren Build-Aufruf zusammengeführt.

  2. Schritt 2: Zwischenprodukte untersuchen

    ELF-Dateien, Binärabbilder, Map-Dateien, Disassemblierung und Größeninformationen werden den Bootstufen zugeordnet.

  3. Schritt 3: Layout kontrollieren

    Startadressen, Sektionen, Ausrichtung, BSS, Stack, eingebettete Daten und freie Bereiche werden gegen das geplante Speicherlayout geprüft.

  4. Schritt 4: Buildvergleich etablieren

    Hashwerte, Werkzeugversionen, Buildprotokoll und deterministische Parameter werden für wiederholbare Ergebnisse erfasst.

Modul 3: QEMU-Emulation und kontrollierter Erststart

  1. Schritt 1: Maschinenmodell vorbereiten

    CPU, Arbeitsspeicher, Firmwareabbild, serielle Konsole, Laufwerke und Payload werden als reproduzierbares Emulationsprofil festgelegt.

  2. Schritt 2: Bootausgabe beobachten

    Frühe Marker, UART-Ausgabe, SBI-Meldungen, Device-Tree-Übergabe und Kernelstart werden einer erwarteten Sequenz gegenübergestellt.

  3. Schritt 3: Fehler gezielt erzeugen

    Fehlende Payload, falsche Adresse, beschädigtes Dateisystem und ungültiger Device Tree werden als Negativfälle getestet.

  4. Schritt 4: Testlauf automatisieren

    Timeout, erwartete Konsolenmuster, Rückgabestatus und Artefaktsicherung werden in einen wiederholbaren Testschritt überführt.

Modul 4: Testautomatisierung und Continuous Integration

  1. Schritt 1: Prüfmatrix bilden

    Architekturen, Mainboards, Features, Debug- und Release-Builds sowie Payloadvarianten werden in einer wartbaren Matrix zusammengefasst.

  2. Schritt 2: Statische Prüfungen integrieren

    Formatierung, Lints, Abhängigkeitskontrollen, Dokumentationsprüfung und Größenlimits werden vor dem Laufzeittest ausgeführt.

  3. Schritt 3: Boottests ausführen

    Emulationsstart, serielle Sollmuster, Zeitgrenzen und definierte Fehlerfälle werden automatisch bewertet.

  4. Schritt 4: Artefakte sichern

    Buildprotokolle, Firmwareabbilder, Disassemblierungen, Größenberichte und Testergebnisse werden je Änderung nachvollziehbar archiviert.

Modul 5: Bootflow und Stufenmodell

  1. Schritt 1: Resetzustand bestimmen

    Ausführungsadresse, Privilegstufe, verfügbare Speicherbereiche, Registerzustand und Bootmedium werden aus der Plattformbeschreibung abgeleitet.

  2. Schritt 2: Frühe Stufe strukturieren

    Stack, minimale Takt- und Pin-Konfiguration, UART-Marker sowie der Übergang aus SRAM oder XIP werden in fester Reihenfolge geplant.

  3. Schritt 3: Hauptstufe laden

    Nach verfügbarer DRAM-Kapazität werden Firmwarebestandteile, Device Tree und Payload adresssicher in den Arbeitsspeicher übertragen.

  4. Schritt 4: Nutzlast übergeben

    SBI-Umgebung, Hart-ID, Device-Tree-Adresse, Einstiegspunkt und Fehlerbehandlung werden vor dem Sprung zur Nutzlast geprüft.

Modul 6: Wartung, Regressionen und Releasepflege

  1. Schritt 1: Unterstützungsstand inventarisieren

    Boards, SoCs, Toolchains, Payloads, bekannte Einschränkungen und zuständige Personen oder Teams werden in einer Wartungsmatrix geführt.

  2. Schritt 2: Änderungsrisiko bewerten

    Compilerupdates, Crate-Aktualisierungen, Refactorings, neue Features und Plattformänderungen werden nach Bootkettenwirkung klassifiziert.

  3. Schritt 3: Regressionen eingrenzen

    Letzter guter Stand, Buildunterschiede, Größenänderungen, Konsolenmarker und Hardwarevergleich werden zur Bisektion genutzt.

  4. Schritt 4: Freigaben pflegen

    Version, Quellstand, Toolchain, Artefakte, Testprotokolle, Recovery-Abbild und bekannte Abweichungen werden gemeinsam veröffentlicht.

Praxisübungen

  • Ein QEMU-Profil mit Firmware, Arbeitsspeicher, Laufwerk und serieller Konsole aufbauen.
  • Erwartete Marker für frühe Stufe, SBI und Kernel definieren.
  • Timeout, fehlende Payload und ungültigen Device Tree automatisch prüfen.
  • Debug- und Release-Builds in eine kleine Testmatrix aufnehmen.
  • Protokolle, Abbilder und Größenberichte als CI-Artefakte ablegen.

Methodik

Fachliche Einordnung, kommentierte Demonstrationen und schrittweise Laboraufgaben werden eng miteinander verbunden. Jeder Arbeitsabschnitt beginnt mit einem überprüfbaren Zielzustand, wird anhand von Konsolen-, Build- oder Messdaten kontrolliert und endet mit einer dokumentierten Fehler- oder Abnahmeprüfung. Vorbereitete Negativfälle verhindern, dass ausschließlich der erfolgreiche Idealfall betrachtet wird.

Zielgruppe

Firmwareentwicklung, Testautomatisierung, CI-Engineering, Embedded-Linux-Integration und technische Maintainer.

Vorkenntnisse

Linux-Kommandozeile, Skripting und Grundkenntnisse in Buildsystemen. Ein vorhandener oreboot-Quellbaum und Basiswissen zu QEMU sind hilfreich.

Fachbereichsleitung und Trainingskoordination

Seminardetails

   
Dauer: 2 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage: 09:00 Uhr
Preis: Öffentlich oder Live Stream: € 1.198 zzgl. MwSt.
Inhaus: € 3.400 zzgl. MwSt.
Teilnehmeranzahl: min. 2 - max. 8
Teilnehmer: Firmwareentwicklung, Testautomatisierung, CI-Engineering, Embedded-Linux-Integration und technische Maintainer.
Voraussetzungen: Linux-Kommandozeile, Skripting und Grundkenntnisse in Buildsystemen. Ein vorhandener oreboot-Quellbaum und Basiswissen zu QEMU sind hilfreich.
Standorte: Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg
Methoden: Fachvortrag, kommentierte Demonstrationen, schrittweise Laborübungen und dokumentierte Fehleranalyse
Seminararten: Öffentlich, Webinar, Inhouse, Workshop - Durchführung mit Trainer vor Ort; Webinar nur bei ausdrücklicher Festlegung
Durchführungsgarantie: ja, ab 2 Teilnehmern
Sprache: Deutsch - bei Firmenseminaren ist auch Englisch möglich
Seminarunterlage: Dokumentation auf Datenträger oder als Download
Teilnahmezertifikat: ja, selbstverständlich
Verpflegung: Kalt- und Warmgetränke, Mittagessen wahlweise vegetarisch
Support: 3 Anrufe im Seminarpreis enthalten
Barrierefreier Zugang: an den meisten Standorten verfügbar
  Weitere Informationen unter + 49 (221) 74740055

Seminartermine

Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.

Seminar Startdatum Enddatum Ort Dauer
Stream live 2 Tage
Stream gespeichert 2 Tage
Bern 2 Tage
Luzern 2 Tage
Inhaus / Firmenseminar 2 Tage
Sankt Gallen 2 Tage
Basel 2 Tage
Winterthur 2 Tage
Zürich 2 Tage
Zürich 2 Tage
Stream live 2 Tage
Stream gespeichert 2 Tage
Luzern 2 Tage
Bern 2 Tage
Inhaus / Firmenseminar 2 Tage
Sankt Gallen 2 Tage
Basel 2 Tage
Winterthur 2 Tage
Winterthur 2 Tage
Zürich 2 Tage
Stream live 2 Tage
Stream gespeichert 2 Tage
Luzern 2 Tage
Bern 2 Tage
Inhaus / Firmenseminar 2 Tage
Sankt Gallen 2 Tage
Basel 2 Tage
Basel 2 Tage
Winterthur 2 Tage
Zürich 2 Tage
Stream live 2 Tage
Stream gespeichert 2 Tage
Luzern 2 Tage
Bern 2 Tage
Inhaus / Firmenseminar 2 Tage
Sankt Gallen 2 Tage
Sankt Gallen 2 Tage
Basel 2 Tage
Winterthur 2 Tage
Zürich 2 Tage
Nach oben
Seminare als Stream SRI zertifiziert
© 2026 www.seminar-experts.ch All rights reserved.  | Kontakt | Impressum | Nach oben