Android Runtime

Software
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 15. März 2016 um 23:52 Uhr durch 77.22.149.147 (Diskussion) (Der Witz ist ja gerade, daß der Java-"Compiler" den Bytecode erzeugt und keinen Maschinencode). Sie kann sich erheblich von der aktuellen Version unterscheiden.

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

Android Runtime
Basisdaten

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

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 Java-Bytecode einer Anwendung in den nativen Befehlssatz des Prozessors (meist ARM) um, welcher anschließend von der Laufzeitumgebung des Gerätes ausgeführt wurde.[2] 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 Java-Bytecode einmalig und bereits während der Installation einer Anwendung in nativen Binärcode um. Dadurch werden Verzögerungen beim Start einer Anwendung weitestgehend vermieden.[2] 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.[3]

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.[4]

Einzelnachweise

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