Vergleich

Yocto für das Chip-Bring-up. MOS4 für die Anwendungsoberfläche.

MOS4 ersetzt Yocto nicht. mos-distro ist der Bundle-Generator und die Anwendungslaufzeit, die auf dem von Yocto produzierten Image läuft — Supervisor, typisiertes IPC, OTA, Observability und 52 Micro Services. Komplementäre Schichten.

Die Yocto-Build-Phase produziert ein stilisiertes Disk-Image; die MOS4-Laufzeitphase deployt micro service-Knoten darauf — bernsteinfarben auf den Laufzeit-Knoten

Schichtgrenze

Yocto baut. MOS4 läuft.

Yocto produziert das Linux-Image. MOS4 ist die Anwendungslaufzeit-Schicht, die auf diesem Image läuft. Drei unterschiedliche Schichten: Yocto-Build-System unten, Linux-Image in der Mitte, MOS4-Anwendungslaufzeit oben.

flowchart TB
  subgraph App["MOS4 — Anwendungslaufzeit-Schicht"]
    M1[Micro Services · Supervisor · OTA pro Service · Observability]
  end
  subgraph Img["Linux-Image (Yocto-produziert)"]
    L1[Kernel · Userland · systemd]
  end
  subgraph Y["Yocto-Build-System"]
    Y1[bitbake · poky · meta-*-Schichten · BSPs]
  end
  Y1 -->|produziert| L1
  L1 -->|führt aus| M1

mos-distro liest ein bundle.toml-Manifest und einen Cargo-Workspace und generiert dann ein eigenständiges Bundle — Monolith-Binary, Konfig, Datendateien — das auf dem Yocto-produzierten Image installiert wird. Es ersetzt bitbake, poky oder Meta-Schichten nicht.1

Gegenüberstellung

Fähigkeitsvergleich.

Rolle Yocto Build-System und Meta-Layer-Toolkit. Produziert ein angepasstes Linux-Image: Kernel, Userland, Init-System. MOS4 Anwendungslaufzeit-Schicht und Bundle-Generator. Läuft auf dem von Yocto produzierten Image. mos-distro ist kein OS-Image-Builder.
Einen Micro Service hinzufügen Yocto BitBake-Rezept schreiben oder finden; Schicht- und Bibliotheksabhängigkeiten auflösen. MOS4 cargo distro add <name> aktualisiert Cargo.toml, bundle.toml und den Master-Prozess in einem einzigen Befehl.
Cross-Kompilierung Yocto OE-SDK-Sysroot oder Cross-Toolchain pro Ziel. macOS erfordert OrbStack oder einen Linux-Build-Host. MOS4 cargo distro generate verwendet vordefinierte Zielprofile (modem-Klasse ARMv7hf, compute-Klasse ARMv7hf und AArch64, KI-Klasse AArch64). Auf macOS erledigt OrbStack die modem-Klasse-Cross-Kompilierung. Andere Ziele erfordern einen Linux-Build-Host.
OTA-Update-Modell Yocto Vollständiger Image-Austausch oder geschichtete Overlays. Update-Einheit ist das vollständige Image oder Overlay. MOS4 Delta pro Micro Service über bsdiff, A/B-Partitionen, automatischer Rollback per Bootcount. Yocto-Style-Vollimage-Updates bleiben für Kernel- und Basis-Image-Änderungen verfügbar.
Anwendungs-Lebenszyklus Yocto systemd oder OpenRC verwaltet Prozesse. Kein Supervisor auf Anwendungsebene. MOS4 MOS4: abhängigkeitsgeordneter Start, on_start/on_stop/Hot-Swap, Watchdog pro Micro Service, prozessübergreifender EventBus — oberhalb der systemd-Basis.
Anwendungs-Bootzeit Yocto Yocto steuert die Linux-Bootzeit. Der Boot der Anwendungsschicht liegt in der Verantwortung des Kunden. MOS4 1,6 s First-App-Ready auf modem-Klasse (Referenzprofil, stationäres RSS 28,4 MB). Yocto steuert den Linux-Boot; MOS4 ergänzt die Anwendungsschicht darüber.
Fahrzeug-/IoT-Primitive Yocto Keine nativen. Rezepterstellung für jede Protokollbibliothek erforderlich. MOS4 52 Micro Services als Cargo-Abhängigkeiten — CAN (16 Protokolle), GNSS, Modem, Bluetooth, Wi-Fi, MQTT-Bridge, KI-Inferenz und mehr. cargo distro add, keine Rezepterstellung. Siehe /de/components für den vollständigen Katalog.
Image-Größen-Tooling Yocto bitbake-sstate-Cache-Analyse. Eigenes Tooling pro Projekt. MOS4 cargo distro size-analysis (otool/readelf + cargo-bloat + cargo tree) zeigt Binärgrößen-Verursacher auf, bevor das Flash-Budget überschritten wird.

Quelle — Yocto von yoctoproject.org ; MOS4 von der MOS4-Architekturseite. Bootzeit-Zahlen mit Fußnote bei [3].

Basis-Images

Yocto, Debian und buildroot — alle unterstützt.

cargo distro erzeugt Bundles, die auf Yocto-produzierten, Debian-basierten und buildroot-basierten Images installiert werden. MOS4 ersetzt die bestehende Image-Build-Pipeline nicht. Yocto ist der häufigste Produktionspfad; Debian und buildroot sind bestätigte Alternativen.2

FAQ

Die Fragen, die wir am häufigsten hören.

  • Ersetzt MOS4 Yocto, bitbake oder Meta-Layer?

    Nein. MOS4 ist die Anwendungslaufzeit-Schicht, die auf dem von Yocto erzeugten Image läuft. Yocto produziert Kernel und Userland; MOS4 ergänzt darüber den Service-Supervisor, typisiertes IPC, OTA, Observability und Fahrzeug-Domänen-micro services. Die beiden ergänzen sich.

  • Gibt es eine meta-mos-Schicht?

    Ja — Munic pflegt eine Meta-Schicht, die MOS4-micro services auf der richtigen Yocto-Schicht einbindet, kompatibel mit bestehenden BSP- und Distro-Schichten. Der Zugang ist an eine Evaluierungsvereinbarung gebunden. <a href="/de/contact?topic=yocto-eval">Mit Engineering sprechen</a>.

  • Ersetzt MOS4 systemd?

    Nein. systemd bootet die Plattform; MOS4 läuft als systemd-Unit (installiert unter /mnt/user/start.sh, übernommen bei Runlevel 5) und beaufsichtigt Anwendungs-micro services darüber. Beide koexistieren.

  • Kann ich Micro Services aktualisieren, ohne das Image neu zu flashen?

    Ja — mos-update führt Delta-OTA pro Micro Service durch: Download, SHA-256-Verifizierung, Ed25519-Validierung, Delta-Anwendung, A/B-Partitions-Commit, automatischer Rollback per Bootcount. Yocto-Style-Vollimage-Updates bleiben für Kernel- und Basis-Image-Änderungen verfügbar.

  • Welche Build-Umgebungen werden für Cross-Kompilierung unterstützt?

    Yocto-, Debian-basierte und buildroot-basierte Images werden alle unterstützt. Auf macOS erledigt OrbStack die modem-Klasse-Cross-Kompilierung; andere Ziele erfordern einen Linux-Build-Host oder OrbStack. Der OE-SDK-Sysroot unter /opt/oecore-cortexa7/ bleibt für ARM-Soft-Float-Cross-Kompilierung auf modem-Klasse-Hardware erforderlich.

  • Wie evaluiere ich MOS4 auf Yocto-Hardware, bevor ich mich auf meta-mos festlege?

    <a href="/de/contact?topic=yocto-eval">Mit Engineering sprechen</a>. Der schnellste On-Target-Pfad wird pro Programm bewertet.

Fußnoten

Vergleichsquellen.

  1. Yocto-Project-Terminologie — bitbake, poky und Meta-Schichten sind die dokumentierten Build-System-Primitive. mos-distro liest bundle.toml + einen Cargo-Workspace auf der Anwendungsschicht. Quelle: yoctoproject.org; MOS4 von /de/platform/architecture.
  2. Basis-Image-Abdeckung verifiziert gegen die mos-distro-CI-Matrix: Yocto-produzierte ARM-Images, Debian-basierte Images und buildroot-basierte Images führen jeweils ein installiertes MOS4-Bundle in der Pipeline pro Commit aus.
  3. Bootzeit auf dem Referenzprofil der modem-Klasse (1,6 s First-App-Ready, 28,4 MB stationäres RSS) gemessen auf dem Referenzboard der modem-Klasse. Methodik: Cold-Boot bis zum ersten erfolgreichen EventBus-Service-Call.

Bringen Sie die Yocto-Schichten mit.

Ein 30-minütiges Gespräch mit dem Engineering. Bringen Sie die Meta-Schichten mit; das Engineering platziert MOS4 dort, wo es passt.

Bauen Sie auf MOS4?

Eine Antwort vom Engineering-Team, ~24 h. Kein Deck, kein NDA.

Mit Engineering sprechen