Project Treble: Google will Android-Updates revolutionieren
Das kommende Android O enthält ein stabiles Hardware-Interface. Hersteller können damit schnell und einfach Android-Updates und -Upgrades umsetzen - wenn sie denn wollen. Aber Probleme mit Linux-Kernel- und Treiber-Updates löst das auch nicht.
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
- Project Treble: Google will Android-Updates revolutionieren
- Neues Android mit altem Kernel
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.
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.
Neues Android mit altem Kernel |
- 1
- 2
Natürlich, jetzt ist Bill Gates schuld. Wahrscheinlich ist er auch Schuld, dass die...
Aus Sicht von Google ist es sicherlich keine "Alibi Funktion". Google ist daran gelegen...
Die Hersteller werden mitnichten (mit 1-2 Ausnahmen vielleicht) die Arbeit dann in den...
Und genau das wollen sie nicht. Der Nutzer soll auf ewig abhängig sein, und zu seinem...