Software-definierte Fahrzeuge (SDV) sind die Zukunft im Automobilbau. Software-basierte Funktionen und Over-The-Air–Updates sorgen über die gesamte Lebensspanne eines Fahrzeugs für mehr Sicherheit und Komfort. Zwei Schlüsseltechnologien, die in diesem Kontext künftig als harmonisches Doppel hervorstechen könnten, sind der AUTOSAR-Standard und die Programmiersprache RUST. Unser Blog gibt einen Einblick, weshalb sich diese beiden Technologien bei der Entwicklung von SDVs gut ergänzen können.
Was ist AUTOSAR?
AUTOSAR (AUTomotive Open System ARchitecture) ist ein weltweit verbreiteter Standard für die Entwicklung von Softwarearchitekturen in der Automobilindustrie. Er bietet eine modulare und skalierbare Plattform, die es Entwicklern ermöglicht, komplexe Softwarelösungen in Embedded Systemen effizient zu erstellen und zu integrieren. AUTOSAR fördert die Interoperabilität und Wiederverwendbarkeit von Softwarekomponenten, was die Entwicklungszeit verkürzt und auch die Kosten senkt. Expleo ist langjähriger Partner des AUTOSAR-Konsortiums und seit 2023 als Premium Partner involviert. Als solcher unterstützen wir mit eigenem KnowHow und Mitarbeitern aktiv die Weiterentwicklung des AUTOSAR-Standards. Unter anderem arbeiten wir in der Working Group Safety daran, wie RUST künftig bei sicherheitsrelevanter Embedded Software im AUTOSAR-Umfeld zum Tragen kommen kann.
Die Rolle von RUST für Automotive Software
RUST ist eine Open-Source-Programmiersprache, die sich durch ihre Sicherheit, Geschwindigkeit und Nebenläufigkeit auszeichnet. Entwickelt von Mozilla Research, zielt sie besonders darauf ab, einige der häufigsten Probleme zu lösen, die in traditionellen Programmiersprachen wie etwa C und C++ auftreten können. Dazu gehören etwa Speicherfehler und Data-Races, die Angreifern potenzielle Einfallstore bieten. Aktuell kommt RUST in vielen Betriebssystemen, aber auch in IoT-Projekten zum Einsatz. Für eine breiten Roll-Out in der Automobilindustrie steht RUST noch in der Erprobung, und auch Expleo untersucht den Einsatz von RUST in Softwareentwicklungsprojekten.
Sicher und Schnell
Ein zentrales Merkmal von RUST ist das strenge Speichermanagement. Durch das Konzept des “Ownership” und die damit verbundenen Regeln zur Lebensdauer und zum Zugriff auf Daten, verhindert RUST sicherheitskritische Defekte wie Speicherlecks und Pufferüberläufe. Diese Sicherheitsmechanismen sind besonders wichtig für sicherheitskritische Anwendungen im Fahrzeug, bei denen Fehler weitreichende Folgen haben können.
Darüber hinaus bietet RUST gute Unterstützung für nebenläufige Programmierung. Dank seiner sicheren und effizienten Handhabung von Threads können Entwickler parallele Aufgaben ohne die typischen Risiken von Data-Races und Deadlocks implementieren. Dies ist besonders relevant für SDVs, die eine Vielzahl von Sensoren und Systemen mit geringen Latenzen parallel verarbeiten müssen.
Warum sind AUTOSAR und RUST ein gutes Doppel für die Entwicklung von SDVs?
- Sicherheit und Zuverlässigkeit: Die Kombination von AUTOSAR und RUST kann künftig eine robuste Grundlage für die Entwicklung sicherheitskritischer Systeme bieten. AUTOSAR stellt sicher, dass die Softwarearchitektur den aktuellen SW-Standards entspricht, während RUST durch seine Speicher- und Thread-Sicherheitsmechanismen potenzielle Fehlerquellen minimiert.
- Effizienz und Leistung: AUTOSAR ermöglicht eine effiziente Integration und Verwaltung von Softwarekomponenten, was die Entwicklungszeit verkürzt. RUST ergänzt dies durch seine hohe Leistung und Effizienz, insbesondere bei der Verarbeitung paralleler Aufgaben, die in SDVs häufig vorkommen.
- Zukunftssicherheit: Die Automobilindustrie bewegt sich agil in Richtung softwaredefinierter Fahrzeuge. AUTOSAR und RUST bieten zukunftssichere Plattformen, die mit den wachsenden Anforderungen und Komplexitäten dieser Fahrzeuge Schritt halten kann. Die Kompatibilität von Rust mit anderen Sprachen wie C und C++ ermöglicht zudem die Wiederverwendung von bestehendem Code und erleichtert einen schrittweisen, kosteneffizienten Übergang.