Resource

Migration von Automotive-Middleware von C++ nach Rust

Wie wir das Protokollierungsmodul von vSomeIP hinsichtlich Leistung und Speichersicherheit optimiert haben

Moderne Automobilsoftware muss schnell und sicher sein. Softwaredefinierte Fahrzeuge werden immer komplexer. Middleware-Komponenten müssen deshalb steigende Lasten bewältigen und zugleich strenge Anforderungen an die Speichersicherheit erfüllen.

Die Herausforderung? Rust in produktive C++-Codebasen einführen – ohne bestehende Systeme oder Arbeitsabläufe zu stören.

Die Lösung: Ein pragmatisches, praxiserprobtes Framework für den Einsatz von Rust in der Automobil-Middleware.

Ein bewährter Ansatz von Critical Software

Dieses Whitepaper dokumentiert, wie wir das Logging-Modul von vSomeIP im Produktivbetrieb refaktorisiert haben. vSomeIP ist eine weit verbreitete Open-Source-Middleware für SOME/IP und wurde gemeinsam mit der BMW Group entwickelt. Sie erfahren im Detail, wie wir Folgendes erreicht haben:

  • Thread-Konflikte beseitigt, die die C++-Implementierung ausgebremst haben

  • Die Leistung durch Rusts „Zero-Cost“-Abstraktionen gesteigert

  • Die Speichersicherheit verbessert, ohne Geschwindigkeit einzubüßen

  • Nahtlose C++-Interoperabilität mit produktionsreifen Werkzeugen hergestellt

Inhalt dieses Whitepapers

  • Ursachenanalyse: Leistungsengpässe und Threading-Probleme in C++

  • Wie das Eigentumsmodell von Rust typische Parallelitätsprobleme der Protokollierung im Fahrzeug löst

  • Schrittweise Integration mit cxx und corrosion für die Interoperabilität von Rust und C++

  • Umfassende Benchmarks: Original-C++, refaktorisiertes C++ und Rust-Implementierung im Vergleich

Praxisnahes Implementierungs-Framework

  • Warum die DLT-Protokollierung (Diagnostic Log and Trace) in Steuergeräten besondere Leistungsanforderungen stellt

  • Bewährte Strategien für die schrittweise Einführung von Rust in sicherheitskritischen Systemen

  • Ein wiederverwendbarer Leitfaden für die Modernisierung veralteter Software-Stacks in der Automobilindustrie

Für wen dieses Whitepaper gedacht ist

  • Softwarearchitekten, die eine Rust-Strategie planen

  • Automobilingenieure, die mit SOME/IP oder vergleichbarer Middleware arbeiten

  • Technische Leiter, die speichersichere Sprachen für ADAS- und SDV-Projekte bewerten

  • Verantwortliche für leistungskritische Embedded-Systems