Seminar OpenBMC Intensivseminar – Architektur, Build und Softwareentwicklung

Das fünftägige Intensivseminar bündelt die Grundlagen-, Build-, Entwicklungs-, Kernel- und Testthemen zu einem vollständigen Engineering-Pfad. Von der Plattformarchitektur über Yocto-Metadaten und D-Bus-Dienste bis zu Kernelintegration, Imagebau, QEMU und CI/CD entsteht ein reproduzierbarer Entwicklungsprozess.

Inhaltsübersicht

  • Lernziele und fachliche Einordnung
  • Schrittweise Seminarinhalte
  • Praxisübungen und Laborszenarien
  • Zielgruppe und Voraussetzungen
  • Didaktik und Arbeitsweise

Lernziele

  • OpenBMC-Architektur, Datenpfade und Entwicklungsverantwortungen sicher beherrschen.
  • Produktvarianten mit Yocto, OpenEmbedded und BitBake reproduzierbar bauen.
  • Eigene D-Bus- und systemd-Dienste entwickeln und paketieren.
  • Kernel-, Device-Tree- und Treiberänderungen in die Plattform integrieren.
  • Automatisierte Tests und CI/CD-Quality-Gates für produktionsreife Images etablieren.

Schrittweise Seminarinhalte

1. Gesamtarchitektur und Engineering-Zielbild

Schwerpunkt: BMC-Aufgaben, Bootkette, Kernel, Userspace, systemd, D-Bus, bmcweb, Hardwaredienste, Repositories und Verantwortlichkeiten.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „Gesamtarchitektur und Engineering-Zielbild“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von BMC-Aufgaben, Bootkette, Kernel, Userspace, systemd, D-Bus, bmcweb, Hardwaredienste, Repositories und Verantwortlichkeiten modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis ein vollständiges Entwicklungs- und Komponentenmodell erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

2. Buildumgebung und BitBake-Taskmodell

Schwerpunkt: Hostsystem, Repositories, Setup, Machine, Distro, Layers, Recipes, Classes, Tasks, Workdirs und Artefakte.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „Buildumgebung und BitBake-Taskmodell“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von Hostsystem, Repositories, Setup, Machine, Distro, Layers, Recipes, Classes, Tasks, Workdirs und Artefakte modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis eine reproduzierbare Buildbasis erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

3. Layer, Maschinen- und Imagekonfiguration

Schwerpunkt: Meta-Layer, Prioritäten, Overrides, machine.conf, Distribution, Image Features, Paketgruppen und Produktvarianten.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „Layer, Maschinen- und Imagekonfiguration“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von Meta-Layer, Prioritäten, Overrides, machine.conf, Distribution, Image Features, Paketgruppen und Produktvarianten modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis eine wartbare Produktkonfiguration erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

4. Rezepte, bbappends und Paketierung

Schwerpunkt: Quellen, Lizenzen, Patches, Buildsysteme, Abhängigkeiten, Installationspfade, Services und Packages.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „Rezepte, bbappends und Paketierung“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von Quellen, Lizenzen, Patches, Buildsysteme, Abhängigkeiten, Installationspfade, Services und Packages modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis ein eigenes integriertes Softwarepaket erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

5. D-Bus-Design und sdbusplus

Schwerpunkt: Objektmodell, Interfaces, Properties, Methoden, Signale, Fehler, Codegenerierung, Server und Clients.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „D-Bus-Design und sdbusplus“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von Objektmodell, Interfaces, Properties, Methoden, Signale, Fehler, Codegenerierung, Server und Clients modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis eine versionierbare Schnittstelle mit baubarem Dienstgerüst erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

6. C++-Dienstentwicklung und systemd

Schwerpunkt: asynchrone Logik, Ereignisse, Zustände, Konfiguration, Logging, Units, Targets, Aktivierung, Restart und Watchdog.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „C++-Dienstentwicklung und systemd“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von asynchrone Logik, Ereignisse, Zustände, Konfiguration, Logging, Units, Targets, Aktivierung, Restart und Watchdog modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis einen robusten produktionsnahen Plattformdienst erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

7. Kernel- und Device-Tree-Integration

Schwerpunkt: Kernelkonfiguration, Treiber, DTS, Pinmux, Busse, GPIO, hwmon, sysfs, Patches und Buildintegration.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „Kernel- und Device-Tree-Integration“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von Kernelkonfiguration, Treiber, DTS, Pinmux, Busse, GPIO, hwmon, sysfs, Patches und Buildintegration modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis eine überprüfbare Hardwareanbindung erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

8. Entwicklungsworkflow und Quellcodepflege

Schwerpunkt: Git, Branches, Patches, devtool, externalsrc, Rebase, Review, statische Analyse und Rückführung in Layer.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „Entwicklungsworkflow und Quellcodepflege“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von Git, Branches, Patches, devtool, externalsrc, Rebase, Review, statische Analyse und Rückführung in Layer modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis einen kontrollierten Änderungs- und Reviewprozess erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

9. QEMU und virtuelle Testumgebung

Schwerpunkt: Imageauswahl, Startparameter, Netzwerk, Konsole, persistente Daten, Snapshots, Reset und Diagnose.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „QEMU und virtuelle Testumgebung“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von Imageauswahl, Startparameter, Netzwerk, Konsole, persistente Daten, Snapshots, Reset und Diagnose modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis eine reproduzierbare virtuelle OpenBMC-Instanz erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

10. Unit-, Integrations- und Systemtests

Schwerpunkt: Mocks, D-Bus-Tests, systemd-Prüfung, Redfish-Tests, Robot Framework, Negativfälle und Regression.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „Unit-, Integrations- und Systemtests“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von Mocks, D-Bus-Tests, systemd-Prüfung, Redfish-Tests, Robot Framework, Negativfälle und Regression modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis eine abgestufte automatisierte Testsuite erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

11. CI/CD und Artefaktkontrolle

Schwerpunkt: Buildstufen, Caches, Parallelität, QEMU-Boot, Tests, Quality Gates, Manifeste, Prüfsummen und Aufbewahrung.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „CI/CD und Artefaktkontrolle“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von Buildstufen, Caches, Parallelität, QEMU-Boot, Tests, Quality Gates, Manifeste, Prüfsummen und Aufbewahrung modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis eine ausführbare Firmware-Pipeline erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

12. Fehlerdiagnose und Engineering-Übergabe

Schwerpunkt: Fetch-, Patch-, Compile-, Boot-, Dienst-, Kernel- und Testfehler, Logkorrelation, Root Cause und Runbooks.

  1. Ausgangslage, Schutzbedarf, Abhängigkeiten und messbare Zielkriterien für den Themenblock „Fehlerdiagnose und Engineering-Übergabe“ erfassen.
  2. Relevante Komponenten, Datenobjekte, Rollen und Schnittstellen anhand von Fetch-, Patch-, Compile-, Boot-, Dienst-, Kernel- und Testfehler, Logkorrelation, Root Cause und Runbooks modellieren.
  3. Die erforderliche Konfiguration, Implementierung oder Prozessfolge in der Laborumgebung schrittweise umsetzen und nachvollziehbar dokumentieren.
  4. Funktion, Berechtigungen, Protokollierung, Ressourcenverhalten und Fehlerreaktionen mit definierten Positiv- und Negativfällen prüfen.
  5. Als Arbeitsergebnis einen integrierten Diagnose- und Entwicklungsleitfaden erstellen, fachlich abnehmen und in einen wiederholbaren Standard überführen.

Praxisübungen und Laborszenarien

  • Aufbau einer eigenen OpenBMC-Buildumgebung und Erzeugung eines Images.
  • Erstellung eines Layers mit Rezept, systemd-Unit und sdbusplus-Dienst.
  • Integration einer kleinen Device-Tree- oder Kerneländerung.
  • Boot des Images in QEMU und Durchführung automatisierter D-Bus- und Redfish-Tests.
  • Entwurf einer CI/CD-Pipeline mit reproduzierbaren Artefakten und Quality Gates.
  • Analyse kombinierter Build-, Boot- und Dienstfehler.

Zielgruppe und Voraussetzungen

Zielgruppe: OpenBMC- und Embedded-Linux-Entwicklung, Firmware Engineering, Build- und Release-Teams, Plattformintegration und technische Architektur.

Voraussetzungen: Gute Linux-, Git- und C++-Kenntnisse, Grundlagen zu Yocto, systemd und Embedded-Systemen.

Didaktik und Arbeitsweise

Kurze Fachimpulse werden unmittelbar durch Demonstrationen, strukturierte Konfigurationsschritte, praktische Übungen und kontrollierte Fehlerfälle vertieft. Jede Übung verwendet definierte Ausgangswerte, Prüfpunkte und Dokumentationsanforderungen, damit die erarbeiteten Abläufe reproduzierbar bleiben und in technische Standards oder Runbooks überführt werden können.

Fachbereichsleitung und Trainerteam

Seminardetails

   
Dauer: 5 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage 09:00 Uhr
Preis: Öffentlich oder Live Stream: € 2.995 zzgl. MwSt.
Inhaus: € 8.500 zzgl. MwSt.
Teilnehmeranzahl: min. 2 - max. 8
Teilnehmer: OpenBMC- und Embedded-Linux-Entwicklung, Firmware Engineering, Build- und Release-Teams, Plattformintegration und technische Architektur
Voraussetzungen: Gute Linux-, Git- und C++-Kenntnisse, Grundlagen zu Yocto, systemd und Embedded-Systemen
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: Vortrag, Demonstrationen, praktische Übungen am System
Seminararten: Öffentlich, Webinar, Inhouse, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht
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- / 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
Bregenz 5 Tage
Linz 5 Tage
Salzburg 5 Tage
Graz 5 Tage
Wien 5 Tage
Stream live 5 Tage
Inhaus / Firmenseminar 5 Tage
Stream gespeichert 5 Tage
Innsbruck 5 Tage
Klagenfurt 5 Tage
Innsbruck 5 Tage
Stream gespeichert 5 Tage
Klagenfurt 5 Tage
Bregenz 5 Tage
Linz 5 Tage
Salzburg 5 Tage
Graz 5 Tage
Wien 5 Tage
Inhaus / Firmenseminar 5 Tage
Stream live 5 Tage
Wien 5 Tage
Inhaus / Firmenseminar 5 Tage
Stream live 5 Tage
Innsbruck 5 Tage
Stream gespeichert 5 Tage
Klagenfurt 5 Tage
Bregenz 5 Tage
Linz 5 Tage
Salzburg 5 Tage
Graz 5 Tage
Salzburg 5 Tage
Graz 5 Tage
Wien 5 Tage
Inhaus / Firmenseminar 5 Tage
Stream live 5 Tage
Innsbruck 5 Tage
Stream gespeichert 5 Tage
Klagenfurt 5 Tage
Bregenz 5 Tage
Linz 5 Tage
Nach oben
Seminare als Stream SRI zertifiziert
© 2026 www.seminar-experts.at All rights reserved.  | Kontakt | Impressum | Nach oben