Professional Articles

Entwicklung und Zertifizierung deutlich vereinfacht

Automotive

Neben der Elektromobilität sind Fahrerassistenzsysteme und autonomes Fahren derzeit die wichtigsten Schwerpunkte in der Automobilentwicklung. Schon heute sind viele Funktionen im Auto voll- oder teilautomatisiert; Fahrerassistenzsysteme wie Abstandswarner, Rückfahrkameras oder Einparkhilfen halten Einzug in die Serienproduktion auch von kleinen und mittleren Fahrzeugen. Völlig autonome Autos, Busse und sogar Lastwagen sind im Testbetrieb auf öffentlichen Straßen unterwegs; erste Serienfahrzeuge können sich zumindest teilautonom bewegen.

Bis zur vollständigen Autonomie ist es aber noch ein großer Schritt, der nicht nur entsprechende Systeme im einzelnen Auto, sondern auch eine intelligente Infrastruktur und eine standardisierte Fahrzeug-zu-Fahrzeug-Kommunikation (V2V) erfordert. Darüber hinaus sind rechtliche Fragen zu klären, etwa die Verantwortung bei Unfällen, und weitere wichtige Themen sind Datenschutz und Sicherheit.

Das autonome Fahrzeug kommuniziert intensiv und produziert eine große Menge an personenbezogenen Daten. Dabei geht es nicht nur um Bewegungsprofile - es gibt bereits Innenraumkameras, die anhand der Mimik des Fahrers erkennen, wann er müde wird. Einige Hersteller testen Sensor-Arrays, die anhand der Reaktionen des Fahrers oder sogar der Passagiere einen verminderten Blutzuckerspiegel und Ähnliches diagnostizieren sollen. Diese Daten müssen ebenso geschützt werden wie die privaten Daten, die bequem von zu Hause aus übermittelt werden.

Bei der Cybersicherheit hingegen geht es vor allem darum, kritische Systeme vor unbefugtem Zugriff und vor allem vor Manipulation zu schützen. Diese Anforderung wird umso wichtiger, je mehr sicherheitskritische und unkritische Anwendungen im Fahrzeug betrieben werden und logisch oder physikalisch miteinander verbunden sind. Viele Entertainment-Systeme basieren beispielsweise auf dem vergleichsweise unsicheren Android-Betriebssystem. Sollte sich ein Angreifer Zugang zu solchen Systemen verschaffen, ist das zwar ärgerlich, aber nicht gefährlich - wenn er aber über dieses Gateway auf sicherheitskritische Systeme zugreifen kann, ändert sich die Situation sofort dramatisch. Eine strikte Trennung solcher Anwendungen mit unterschiedlichen Kritikalitätsstufen ist daher unerlässlich.


Abbildung 1: Advanced Driver Assistance System (ADAS)

Hersteller streben nach Konsolidierung und Standardisierung

Dies steht jedoch in diametralem Gegensatz zu einem anderen wichtigen Bestreben der Hersteller. Sie wollen den derzeitigen Wildwuchs in der Automobilelektronik drastisch reduzieren und möglichst einheitliche Plattformen und Kommunikationswege für die verschiedenen elektronischen Komponenten einführen. Damit verfolgen sie das Ziel, Hardware- und auch Entwicklungskosten zu sparen, denn jede Plattform erfordert unterschiedliche Werkzeuge und Know-how. Außerdem sind sie daran interessiert, elektronische Komponenten modellübergreifend einsetzen zu können, vergleichbar mit den Plattformstrategien für mechanische Komponenten, die etwa seit Anfang des Jahrtausends populär sind.

Heutige Automobile haben bis zu 100 verschiedene Prozessoren für unterschiedlichste Funktionen und bis zu sieben Busse für die Kommunikation zwischen ihnen und den Sensoren oder Aktoren. Entsprechend komplex ist die Softwareumgebung - 100 Millionen Codezeilen sind im Pkw keine Seltenheit. Die Konsolidierung auf wenige Hardware-Plattformen und Ethernet als einheitlicher Kommunikationskanal bietet daher erhebliche Einsparpotenziale. Allerdings muss bei dieser Konsolidierung sichergestellt werden, dass die einzelnen Anwendungen, insbesondere die sicherheitskritischen, strikt von allen anderen getrennt sind, auch wenn sie auf der gleichen Hardware laufen.


PikeOS für die sichere Trennung von Anwendungen

Mit PikeOS stellt SYSGO den Entwicklern eine Umgebung zur Verfügung, die eine solche Trennung gewährleistet und sich bereits in der Flugzeugindustrie mit ihren mindestens ebenso hohen Sicherheitsanforderungen bewährt hat. PikeOS stellt eine modulare Software-Architektur dar, die mehrere eingebettete Anwendungen auf einer einzigen Hardware-Plattform integriert. PikeOS bietet sowohl ein vollwertiges Echtzeitbetriebssystem (Hard RTOS) als auch ein Virtualisierungs- und Partitionierungssystem, um die speziellen Anforderungen von Automobilanwendungen zu unterstützen. Die Basis der PikeOS-Plattform ist ein kleiner, zertifizierbarer Mikrokernel, der eine Virtualisierungsinfrastruktur bereitstellt. Damit ist es möglich, verschiedene Anwendungen und Ressourcen in sicheren, individuellen Partitionen unterzubringen. 

Da die automobilen Anwendungen von unkritischen Infotainmentsystemen bis hin zu hochkritischen Steuerfunktionen im Fahrzeug reichen, bietet PikeOS dementsprechend eine breite Palette von Gastbetriebssystemen, so genannten "Guest OS": von POSIX® über Linux und Android bis hin zu AUTOSAR oder COVESA. Dank der strikten Trennung der einzelnen Partitionen voneinander können Anwendungen unterschiedlicher Kritikalitätsstufen und mit verschiedenen Sicherheitsniveaus in einer gemischten Umgebung auf einer einzigen Standard-Hardwareplattform laufen. Dank der integrierten Zeitpartitionierung spielt es keine Rolle, ob die Anwendungen in Echtzeit laufen oder nicht.


Abildung 2: Unterschiedliche Anwendungen auf einer Hardware-Plattform und ein deterministischer Kommunikationskanal ermöglichen ein einfaches, aber sicheres Systemdesign

Hypervisor und RTOS

PikeOS basiert auf einem Mikrokernel mit der Leistung eines herkömmlichen Echtzeitbetriebssystems. Der Hypervisor bietet Partitionen, auf denen verschiedene Anwendungen laufen können - von einer einfachen, aber hochkritischen Steuerungsaufgabe bis hin zu einem vollwertigen Betriebssystem wie Linux oder Android. Auf diese Weise können sichere und unsichere Anwendungen auf derselben Plattform nebeneinander bestehen. Komplexe Systeme, die in der Vergangenheit mehrere Geräte erforderten, können so auf einer einzigen Hardware konsolidiert werden. Dies reduziert das Gewicht, den Stromverbrauch und den Verkabelungsaufwand und senkt die Materialkosten. Der PikeOS-Hypervisor läuft sowohl auf x86 als auch auf ARM, PowerPC, SPARC V8 / LEON oder MIPS und kann leicht an andere CPU-Architekturen angepasst werden.

Sehr interessant ist der Einsatz von Hypervisoren wie PikeOS auf Multi-Core-CPUs. Mehrere Kerne unterstützen zum einen die Trennung von Anwendungen und bieten zum anderen auch die dafür notwendige Performance. Allerdings ist die Zertifizierung von Multicore-Systemen sehr komplex, und viele zertifizierte Systeme nutzen tatsächlich nur einen Kern. Wenn jedoch verschiedene Funktionen in einer einzigen Software gebündelt werden, die unter einem Echtzeitbetriebssystem auf nur einem CPU-Kern läuft, kann es sehr leicht zu Interferenzen zwischen den Funktionen kommen - eine strikte Trennung ist nicht gewährleistet. So kann die Auswirkung einer Anwendung auf das Laufzeitverhalten einer anderen Anwendung zu Sicherheitsproblemen führen, wie z. B. zur Überschreitung von Fristen bei Echtzeitanwendungen. Ebenso können Timing-Effekte aufgrund der gemeinsamen Nutzung von Systemressourcen wie Caches und Speicherbussen zu versteckten Informationskanälen führen, die die Vertraulichkeitsanforderungen der Anwendung verletzen.


Sicherheit und Zertifizierung

Der PikeOS-Hypervisor selbst ist nach den höchsten Industriestandards zertifiziert und damit eine geeignete Grundlage für kritische Systeme, bei denen sowohl die funktionale Sicherheit als auch die IT-Sicherheit gewährleistet sein müssen. Die Schutzmechanismen beruhen im Wesentlichen auf zwei Prinzipien: Der strikten Trennung von Anwendungen durch Zeit- und Ressourcenpartitionierung und der Kontrolle der Kommunikationskanäle. Die einzelnen Anwendungen innerhalb des Gesamtsystems können unterschiedliche Kritikalitätsstufen haben.

Durch diese Schutzmechanismen von PikeOS kann die Zertifizierung nach branchenspezifischen Safety- und Security-Standards für jede Anwendung separat durchgeführt werden - ein wesentliches Merkmal, um die Kosten unter Kontrolle zu halten. Darüber hinaus war PikeOS die erste Plattform, die auch in Multi-Core-Umgebungen eine SIL 4-Zertifizierung erreichte.

ADAS Bus Gateway


Abbildung 3: Basierend auf dem PikeOS-Mikrokernel können verschiedene Betriebssysteme und Anwendungen mit strikter Trennung laufen

ISO 26262 und SEooC (Safety Elements out of Context) Konzept

ISO 26262 ist eine internationale Norm, die den Sicherheitslebenszyklus von elektrischen, elektronischen und softwarebasierten Komponenten in Personenkraftwagen definiert. Basierend auf der IEC 61508 reduziert die ISO 26262 das Risiko des Auftretens von gefährlichen Betriebssituationen und definiert Sicherheitsmaßnahmen, die das Risiko eines Ausfalls reduzieren.

Um die Anforderungen der ISO 26262 zu erfüllen, wird PikeOS optional mit einem Automotive Certification Kit angeboten, das die langjährige und umfangreiche Zertifizierungsexpertise von SYSGO beinhaltet. Das Zertifizierungskit beinhaltet einen ISO 26262 Part 6 konformen PikeOS-Hypervisor sowie umfassende Dokumentationsunterstützung für Entwicklung und Test. Darüber hinaus können zusätzliche Sicherheitsinformationen bereitgestellt werden, um ISO 26262-konforme Systeme zu erreichen. Wichtige Bestandteile dieser Zertifizierungskits sind ein Sicherheitshandbuch mit Richtlinien für den Einsatz von PikeOS in sicherheitskritischen Systemdesigns sowie eine Fallstudie mit charakteristischen Anforderungen an die funktionale Sicherheit gemäß den jeweils geforderten Automotive Safety Integrity Levels (ASIL).

Mehr Informationen unter www.sysgo.com/pikeos

PikeOS for MPU

PikeOS for MPU

Learn more

Get connected with SYSGO


Contact us