rupdate ist ein modernes Open-Source-Update-Framework für Embedded Linux Systeme. Entwickelt in Rust, bietet rupdate eine sichere, robuste und schlanke Lösung für zuverlässige System-Updates.

Bestandteile von rupdate

rupdate basiert auf dem Konzept der sogenannten Pendulum Updates. Dabei werden redundante Partitionssätze genutzt, um atomare System-Updates, sichere Rollbacks und maximale Systemverfügbarkeit zu ermöglichen.

Das Framework umfasst Spezifikationen und Rust-Implementierungen für folgende Kernkomponenten:

Partition Description

Die Partition Description definiert systemweit die Partitionsstruktur eines Embedded Linux Systems. Sie beschreibt:

■  das Layout der Partitionen, 
■  die verwendeten redundanten Partitionssätze, 
■  Formate zur Bereitstellung dieser Informationen für: Linux-Systeme, Userspace-Anwendungen, Bootloader, Initramfs, Hypervisoren 

Dadurch entsteht eine konsistente Grundlage für sichere A/B- beziehungsweise Pendulum-Updates.

Update Tool

Das rupdate Update Tool ist eine Linux-Userspace-Anwendung zur Durchführung und Verwaltung von System-Updates.

Zu den Funktionen gehören:

■  Installation von Update-Bundles, 
■  Systemtests nach Updates, 
■  automatisches Rollback bei Fehlern, 
■  Synchronisation des Systemstatus zwischen Bootloader und Userspace. 

Die Implementierung in Rust sorgt zusätzlich für hohe Stabilität, Speicher­sicherheit und Wartbarkeit.

Update Bundles (Packages)

rupdate definiert ein flexibles Archivformat für Update-Bundles. Diese Bundles enthalten:

■  Partitions-Images, 
■  Metadaten, 
■  Update-Informationen, 
■  Validierungsdaten. 

Das Paketformat wurde speziell für Embedded Linux Systeme optimiert und ermöglicht effiziente sowie reproduzierbare Updates.

Update Environment

Das Update Environment stellt einen binär codierten Datenbereich bereit, der sowohl vom Bootloader als auch von Userspace-Tools oder Hypervisoren gelesen und geschrieben werden kann.

Dadurch können:

■  Systemzustände synchronisiert, 
■  Update-Status gespeichert, 
■  Rollback-Informationen verwaltet, 
■  sichere Neustart-Strategien umgesetzt werden. 

KISS-Prinzip: Klein, einfach und flexibel

rupdate wurde konsequent nach dem KISS-Prinzip (Keep It Small and Simple) entwickelt.

Das bedeutet:

■  keine verpflichtenden Cloud-Dienste, 
■  minimale Komplexität, 
■  flexible Integrationsmöglichkeiten, 
■  frei definierbare Sicherheits- und Integritätsmechanismen, 
■  einfache Anpassbarkeit an bestehende Systeme. 

Open Source & Community

rupdate ist vollständig als Open Source verfügbar und enthält:

■  Werkzeuge zum Erstellen von Update-Bundles, 
■  Tools zur Installation und Verwaltung von Updates, 
■  Utilities für die initiale Systemeinrichtung, 
■  umfangreiche Dokumentation, 
■  integrierte Testsuites. 

Die offene Architektur ermöglicht es Entwicklern und Unternehmen, rupdate aktiv einzusetzen, zu erweitern und zur Weiterentwicklung beizutragen.

Die Software steht unter der MIT-Lizenz bereitgestellt.

Hintergrund & Entwicklung

rupdate wurde von Elektrobit im Rahmen einer hochoptimierten Linux-basierten Plattform für Automotive-Systeme konzipiert.

Weiterführende Links und Dokumente

 

Über rupdate informieren

Melden Sie sich gerne bei uns. In einem ersten Gespräch klären wir, wie wir Sie passgenau unterstützen können.

Ihr Ansprechpartner

Unsere Experten aus dem emlix Solutions-Team
Tel. +49 551 304460
solutions@~@emlix.com