Android Runtime

aus Wikipedia, der freien Enzyklopädie
Android Runtime
Basisdaten

Entwickler Google Inc.
Betriebssystem Android
Kategorie Laufzeitumgebung
Lizenz Apache-Lizenz 2.0[1]
source.android.com/devices/tech/dalvik/art.html

Android Runtime (kurz ART) ist eine Laufzeitumgebung, die von Googles mobilem Betriebssystem Android ab Version 5.0 Lollipop eingesetzt wird.

Zuvor war sie als experimentelle Laufzeitumgebung in Android 4.4 KitKat enthalten und löste ab Android 5.0 offiziell die bis dato verwendete virtuelle Maschine Dalvik ab. Dalvik wandelte den Dex-Bytecode[2] einer Anwendung in den nativen Befehlssatz des Prozessors (meist ARM) um, welcher anschließend von der Laufzeitumgebung des Gerätes ausgeführt wurde.[3] Da Dalvik auf Just-in-time-Kompilierung setzte, musste bei jedem Aufruf der Anwendung der Bytecode zunächst umgewandelt werden, was eine verzögerte Ausführung verursachte, daher wurde ein entsprechend großer Cache eingesetzt, damit diese Verzögerung nur beim ersten Start eintrat oder wenn eine Applikation gestartet wurde, die länger nicht verwendet worden war. Bei entsprechenden Tests auf demselben Gerät erwies sich der Vorteil von ART gegenüber Dalvik dann auch meist kleiner als gehofft.

ART wandelt dagegen den Dex-Bytecode einmalig und bereits während der Installation einer Anwendung mit Hilfe des dex2oat-Tools in nativen Binärcode um. Dadurch werden Verzögerungen beim Start einer Anwendung weitestgehend vermieden.[3] Durch das Wegfallen der Just-in-time-Kompilierung wird der Prozessor weniger in Anspruch genommen, was sich in geringerem Energieverbrauch bemerkbar machen soll. Anwendungen, die für die Dalvik-Laufzeitumgebung konzipiert sind, sind in der Regel zu ART kompatibel.

Die Unterstützung für 64-Bit-Anwendungen auf entsprechenden Prozessortypen wurde in Dalvik nicht mehr hinzugefügt und ist nur in ART vorhanden. Auch soll die Garbage Collection, die automatische Speicherbereinigung, nun weniger häufig gestartet werden und schneller arbeiten als noch unter Dalvik.[4]

Nachteilig dagegen ist die längere Dauer der Installation von Anwendungen und beim Vergleich der beiden Kompilationsprozeduren der erhöhte Speicherverbrauch um durchschnittlich 20 Prozent.[5]

Weblinks

Commons: Android Runtime – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

  1. NOTICE - platform/art - Git at Google. Abgerufen am 5. Dezember 2014.
  2. ART and Dalvik. Abgerufen am 10. Juli 2016.
  3. a b ART vs Dalvik - introducing the new Android runtime in KitKat. 4. Dezember 2013. Abgerufen am 5. Dezember 2014.
  4. Jörg Thoma: Lollipop läuft schneller ohne Dalvik und länger mit Volta. 19. November 2014. Abgerufen am 5. Dezember 2014.
  5. Jakob Straub: ART: Der Turbo von Android 4.4 KitKat. 10. November 2013. Abgerufen am 5. Dezember 2014.