/ OSS / Project Treble: Google will Android-Updates revolutionieren

Project Treble: Google will Android-Updates revolutionieren

126864-137117-i_rc.jpg
Gerfried Steube on May 13, 2017 - 1:22 pm in OSS

Aus Sicherheitsperspektive ist Android eine Katastrophe: Updates, die der Hersteller Google veröffentlicht, werden von den Hardware-Partnern nur sehr selten und viel zu langsam umgesetzt. Upgrades auf neue Versionen gibt, es wenn überhaupt, nur in einem sehr kleinen Rahmen. Schuld daran ist wohl der komplexe Aufbau des Android-Systems selbst, was Google nun mit einer stabilen Hardware-Schnittstelle überwinden will, wie es im Android-Developerblog heißt.


Standardisierte Hardware-API

Die Arbeiten an dieser Schnittstelle bezeichnet Google als Project Treble. Das Projekt sei unter anderem in Zusammenarbeit mit Sony und dem führenden SoC-Produzenten Qualcomm entstanden und bereits für die Vorabversionen des kommenden Android O umgesetzt. Das Ziel von Treble sei es, die gerätespezifische Low-Level-Software-Implementierung der Chipproduzenten aus dem Android-OS-Framework herauszutrennen.

  • Von Google bis zum Gerät ist es ein weiter Weg für Android. (Bild: Google)
  • Zusätzlich zu dem Entwickler-API soll es ein Vendor-Interface geben. (Bild: Google)
  • Android-Updates sind schwierig ... (Bild: Google)
  • ... und sollen dank Treble einfacher werden. (Bild: Google)
  • Der Aufbau von Android mit Kernel, HAL, und anderen Bestandteilen (Bild: Google)

Von Google bis zum Gerät ist es ein weiter Weg für Android. (Bild: Google)

Für den Zugriff auf die eigentlichen Hardware-Funktionen wird das sogenannte Vendor Interface eingeführt. Dieses soll, ähnlich wie die Java-API, für die Apps mit einem Test-Framework, der Vendor Test Suite (VTS), ausgestattet werden, um die Kompatibilität eines Gerätes und seiner Implementierung testen und gewährleisten zu können.

Der Aufbau mit der einheitlichen Hardware-Abstraktion hat dann den Vorteil, dass Android-Hersteller wie Sony, den Großteil ihres Systems unabhängig von der Hardware aktualisieren können und damit zum Beispiel schnell die monatlichen Updates von Google an ihre Nutzer verteilen können. Auch Upgrades der jährlichen Android-Versionen werden dadurch wohl etwas vereinfacht. In der Ankündigung heißt es allerdings, dass die Hersteller sich für diese Vorgehensweise “entscheiden” könnten. Verpflichtend sind die schnellen Updates mit Hilfe der Schnittstelle vorerst also nicht.

Komplexe Implementierungen erzwingen Standard-API

Die Einführung solch einer Schnittstelle löst Probleme im Aufbau und des Erstellungsprozesses von Android, von dem auch Google selbst betroffen ist. Denn die Chiphersteller schreiben ausgehend von einer Linux-Kernelversion, die Google für Android bestimmt, nicht nur einzelne Hardware-Treiber, sondern auch eine Vielzahl verschiedener Userspace-Komponenten, die oft sehr eng mit dem restlichen Android-Code verknüpft sind.

Zwar gibt es darauf aufbauend mit dem Hardware Abstraction Layer (HAL) bereits eine nach außen hin einheitliche Hardware-Schnittstelle, auf die Apps zugreifen können. Google schreibt seinen Partnern bisher aber nicht vor, wie diese HAL-Komponenten mit den eigentlichen Gerätetreibern und dem Kernel interagieren müssen. Ebenso kann das von den Herstellern genutzte Android-Framework intern an eigene Schnittstellen angepasst werden, etwa um spezifische Optimierungen vorzunehmen.

Die Implementierungen der Hersteller unterscheiden sich je nach gewähltem SoC und Zulieferer teils massiv und sind bei einigen Herstellern auch gerätespezifisch. Diese Code-Anpassungen sind dann allerdings so groß, dass der Aufwand zum Portieren neuer Android-Version oder auch nur der monatlichen Patches auf den eigenen Code einfach so aufwendig wird, dass viele Hersteller diesen schon aus Kostengründen scheuen.

Read more on: Source

Comments are disabled