52497.jpg

Bild 1: Android-Infotainment-System mit gemischter Kritikalität.

Bild 1: Android-Infotainment-System mit gemischter Kritikalität.Green Hills Software

Android stellt heute eine überzeugende Wahl für Kfz-Infotainment-Systeme dar. Als beliebtestes und am schnellsten wachsendes mobiles Betriebssystem (OS) – IDC zufolge sind zwei Drittel der weltweit verkauften Smartphones damit ausgestattet – sehen Automotive-OEMs Android als erste Wahl, das bestmögliche Multimedia-Erlebnis ins Auto zu bringen. Android bietet standardisierte Schnittstellen für schnellere Grafik, Audio, drahtlose Netzwerke, Bluetooth, USB und vieles mehr. Anwendungen können damit auf einfache Weise die Leistungsfähigkeit dieser Hardware-Einrichtungen nutzen. OEMs sehen Android als ein Mittel, die Vertrautheit der Kunden mit mobilen Geräten in das Auto zu übertragen und dort zu verbessern.

Das wohl wichtigste Argument für Android im Kfz-Bereich ist sein offenes Lizenzierungsmodell (Open Source). In sich geschlossene (Closed Source) Betriebssysteme stellen zwar APIs für Applikationsentwickler bereit, erlauben aber keine Modifizierung oder Erweiterung des OS-Basis-Frameworks. Genau darauf kommt es aber im Automotive-Bereich an, wenn sich OEMs differenzieren und automotive-spezifische Funktionen und Einschränkungen unterstützt werden müssen. Androids Frameworks und Hardware Abstraction Layer basieren auf der flexiblen Apache-Lizenz, die eine Modifizierung des Quellcodes erlaubt, ohne dass der Entwickler diese Code-Änderungen oder die damit verbundenen IP-Rechte veröffentlichen muss.

Ein weiterer Vorteil von Android gegenüber gängigen Multimedia-Infotainment-Betriebssystemen ist die gute Integration des App-Stores. Android bietet APIs für den Zugriff auf einen App-Store, integriert Werbung für mehr Umsatzgenerierung, Over-the-Air-Updates für Apps und ein umfangreiches Ecosystem von Anwendungen und Entwicklern. OEMs wollen eher ihren eigenen App-Store anbieten, um die Benutzerfreundlichkeit zu steuern und die Verwendung von OEM-zugelassenen Anwendungen zu fördern (oder zu erzwingen).

Die Verfügbarkeit der Android-Open-Source-Infotainment-Plattform kommt zu einem Zeitpunkt, wenn die OEMs mehr Kontrolle über die digitale Infrastruktur ihrer Fahrzeuge erlangen. Das herkömmliche Modell der Auslagerung des gesamten Infotainment-Systems an Tier-1-Zulieferer wird zumindest bei einigen OEMs in unterschiedlichem Ausmaß ersetzt: OEMs wählen jetzt das Betriebssystem, die Entwicklungsumgebung, die Mikroprozessor-Plattform und führen sogar einen hohen Anteil an der Softwareentwicklung durch. Tier-1-Zulieferer sollen dann die Hardware, Applikations- und Treiber-Anteile beisteuern, aber der OEM besitzt die Architektur. Android bietet die Kontrolle, die OEMs bei diesem neuen Ansatz benötigen.

Herausforderungen mit Android im Auto

Im Jahr 2012 fand die Auto-Quality-Analyse von J. D. Power zum ersten Mal in ihrer 26-jährigen Geschichte heraus, dass das Infotainment-System nun der größte Problemverursacher in neuen Autos ist. Die OEMs sind daher zu Recht um die Zuverlässigkeit, Stabilität und Sicherheit von Android besorgt. Der extrem große Quellcode von Android und das offene Entwicklungsmodell sorgen für Unübersichtlichkeit – vor allem bei täglich Tausenden von Bearbeitungen am Android-zugrundeliegenden Linux-Kernel. Dies verursacht einen stetigen Strom an Schwachstellen. Eine Suche in der National-Vulnerability-Datenbank von U. S. CERT bringt zahlreiche Schwachstellen mit unterschiedlichem Schweregrad hervor. Hier eine Auswahl der schwersten Vorkommen:

  • CVE-2012-4190: erlaubt Angreifern einen Denial-of-Service zu verursachen oder willkürlichen Code auszuführen.
  • CVE-2011-0680: erlaubt Angreifern, SMS-Nachrichten zu lesen, die für andere Empfänger bestimmt sind.
  • CVE-2010-1807: erlaubt Angreifern, willkürlichen Code auszuführen.
  • CVE-2009-2999, -2656: erlaubt Angreifern, einen Denial-of-Service zu verursachen (Applikations-Neustart und Netzwerk-Trennung).
  • CVE-2009-1754: erlaubt Angreifern den Zugriff auf Anwendungsdaten.
  • CVE-2009-0985, -0986: Buffer-Overflows erlauben Angreifern, willkürlichen Code auszuführen.

Wir weisen auf diese besonderen Schwachstellen hin, da sie den höchsten Schweregrad bei Vorfällen einnehmen, die aus der Ferne (remote) durchgeführt werden können. Diese Arten von Android- und Linux-Schwachstellen werden von Hackern benutzt, um Android-Smartphones und -Tablets zu rooten.

Bild 2: Virtualisierungsarchitektur für Android-Infotainment-Systeme.

Bild 2: Virtualisierungsarchitektur für Android-Infotainment-Systeme.Green Hills Software

Safety

Ein weiteres Problem bei Android ist die Fahrer/Beifahrer-Sicherheit. Automobilelektronik-Architekturen befinden sich heute mitten in einer Trendwende: anstatt immer mehr Prozessoren für neue Funktionen in Fahrzeuge zu verbauen, werden unterschiedliche Funktionen nun in einer geringeren Anzahl hochleistungsfähiger Multicore-Prozessoren konsolidiert. Damit verringert sich die Baugröße, das Gewicht, die Stromaufnahme sowie der Bauteil- und Verdrahtungsaufwand. Prozessorkonsolidierung sorgt also für die Integration sicherheitskritischer Anwendungen in das Infotainment-System. OEMs wollen auf diese Weise Echtzeit-Cluster, Rückfahrkameras und Fahrerassistenzsysteme (ADAS) auf dem Rechner in der Mittelkonsole hosten (Bild 1).

Die Android-Infotainment-Systeme der nächsten Generation müssen gewährleisten, dass Applikationen und Multimedia nicht auf unvorhergesehene Weise mit Sicherheitsfunktionen interagieren und eine Gefahr für die Fahrzeuginsassen darstellen.

Der Trend zur Konsolidierung wird durch die nächste Generation performance-effizienter Multicore-Prozessor-Plattformen vorangetrieben: zum Beispiel durch die Jacinto-6-Plattform von Texas Instruments (TI), die über eine stromsparende Dual-Core-Prozessorarchitektur des Typs ARM Cortex-A15-, eine Reihe integrierter I/Os für Fahrzeugnetzwerke und mehrere Grafikbeschleuniger verfügt.

Upgrades

Ein weiteres Problem ergibt sich für OEMs bei Upgrades. Stellen Sie sich vor, Ihr Fahrzeug ist mit einem Infotainment-System mit Android 2.2 (Froyo) ausgestattet. Ihre Android-beflissenen Bekannten fahren dann mit Ihnen mit und lächeln, weil diese ihre Jelly-Bean- oder Key-Lime-Pie-Smartphones zücken. Froyo wurde 2010 eingeführt – was sehr lange her ist für ein Infotainment-System in einem Fahrzeug des Jahres 2013! Mit Android müssen OEMs eine aggressivere Upgrade-Strategie fahren, um nicht als veraltet zu gelten. Während mobile Android-basierte Geräte FOTA-Updates (Firmware Over-the-Air) über das Mobilfunknetzwerk unterstützen, sind OTA-Systeme netzwerk- und gerätespezifisch und nicht Teil des Android-Open-Source-Produkts und des SDK. Wenn ein OEM FOTA unterstützen möchte, ist kundenspezifische Arbeit erforderlich.

Anforderungen erfüllen

OEMs können sich nicht auf Android verlassen, um alle Aspekte der nächsten Generation von Infotainment-Systemen abzudecken. Android kann nicht schnell genug booten, kann kein Echtzeitverhalten für Protokolle wie CAN garantieren und ist nicht zuverlässig genug für sicherheitskritische Funktionen wie ADAS und integrierte Cluster. OEMs brauchen eine Systemarchitektur, in der Android und seine Anwendungen friedlich neben echtzeitkritischen Anwendungen existieren können.

Einige OEMs suchen in der Virtualisierung die Lösung für die nächste Generation von Infotainment-System-Architekturen. Mit einem speziellen Echtzeit-Hypervisor kann eine Plattform auch Android in einer virtuellen Maschine hosten – sicher isoliert von Applikationen, die APIs nach offenem Standard nutzen und Echtzeit-Sicherheitsfunktionen ausführen.

Ein solcher Hypervisor ist der Integrity Multivisor von Green Hills Software. Er basiert auf dem Integrity-Separationskernel und wird seit 1997 in Automotive-Infotainment- und anderen einsatzkritischen Anwendungen verwendet.

Bild 3: Sicherheits-Nachrüstung für Android mittels Virtualisierung.

Bild 3: Sicherheits-Nachrüstung für Android mittels Virtualisierung.Green Hills Software

Mit dieser Virtualisierungslösung kann der Infotainment-Rechner erstaunliche Boot-Zeiten im Millisekunden-Bereich erreichen, um Instant-On-Aufgaben wie die Reaktion auf CAN-Nachrichten und das Einschalten der Rückfahrkamera zu ermöglichen. Mit einer Plattform, die diese Architektur mit gemischter Kritikalität unterstützt, können OEMs die Größe, das Gewicht, die Stromaufnahme und die Kosten ihrer Elektronik-Infrastruktur senken und gleichzeitig die Vorteile und Funktionen neuester Android-Versionen nutzen.

Wendet man diese Hypervisor-Architektur auf das zuvor genannte System aus Haupt-Infotainment-OS und sicherheitskritischen Anwendungen für die Rückfahrkamera- und Fahrerinformationscluster an, ergibt sich die in Bild 2 dargestellte Architektur.

Sicherheit nachrüstbar?

Neben Sicherheitsanwendungen lassen sich auch sicherheitskritische Funktionen von Android partitionieren. Damit ergibt sich eine Art nachrüstbare Sicherheit für eine sonst gefährdete Umgebung. Die Übertragung sensibler Daten über das Fahrzeugnetzwerk, aus dem Speicher privater Consumergeräte oder von OEM-Daten innerhalb des Android-Speichersystems lässt sich mit einem Hypervisor somit besser absichern (Bild 3).

TIs Jacinto 6 ist ein gutes Beispiel eines Automotive-SoCs (System-on-Chip), das Android für die nächste Generation von Automotive-Systemen möglich macht. Der stromsparende Dual-Core-Prozessor des Typs Cortex-A15 mit ARM-Virtualisierungs-Erweiterungen (ARM VE), Datenanbindungs- und Datenkommunikations-Peripherie und mehreren Grafik-/Multimedia-Beschleunigern ermöglicht hohe Android-Performance sowie Instant-On-, Echtzeit- und sicherheitskritische Funktionen, die über den Hypervisor gehostet werden.

Android verfügt über eine leistungsfähige Sensorfunktion, die Beschleunigung, Magnetometer, Temperatur, Gravitation, Gyroskop, Berührung/Näherung und Lichterkennung unterstützt. Entwickler von Automotive-Apps können diese Standard-APIs nutzen, um Zustände zu erkennen, bei denen bestimmte Anwendungen oder Dienste gesperrt werden sollten. Androids Vibrations- und Sound-APIs können dem Fahrer haptisches und Audio-Feedback geben, wenn eine Visualisierung nicht ratsam ist. In einer virtualisierten Umgebung muss der Hypervisor imstande sein, Peripherie, die sowohl von der Android-Umgebung als auch von kritischen Anwendungen benötigt wird, sicher zu multiplexen.

Auf einen Blick

Android im Auto
Automobilelektronik benötigt eine Systemsoftware-Architektur, die einem Android-basierten Infotainment-System die Zuverlässigkeit, Sicherheit und Echtzeit-Performance bietet, die OEMs und Verbraucher fordern – insbesondere im Hinblick auf den Konsolidierungstrend. Die Kombination aus Virtualisierung und leistungsfähigen Multicore-Prozessoren hilft dabei, diese Vision zu verwirklichen.

David Kleidermacher

ist CTO von Green Hills Software.

(av)

Sie möchten gerne weiterlesen?

Unternehmen

Green Hills Software GmbH

Siemensstr. 38
53121 Bonn
Germany

Green Hills Software Ltd.

Leigh Road
SO50 9PD Eastleigh, Hampshire
United Kingdom