Android Runtime: Unterschied zwischen den Versionen

Aus Android Wiki
Keine Bearbeitungszusammenfassung
K (Neuen Artikel "Java" verlinkt)
 
(2 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
Zeile 1: Zeile 1:
Die '''Android Runtime''' (kurz '''ART'''<ref>http://source.android.com/devices/tech/dalvik/art.html</ref>) ist eine in [[Android]] {{Android|4.4}} eingeführte [[Wikipedia:de:Registermaschine|Registermaschine]], welche grundsätzlich die selben Aufgaben wie die derzeit verwendete [[Dalvik VM]] erfüllt. Die ART übersetzt demnach einen Java-Bytecode in maschinenlesbaren Code und führt diesen aus.
{{DISPLAYTITLE:Android Runtime (ART)}}
Die '''Android Runtime''' (kurz '''ART'''<ref>http://source.android.com/devices/tech/dalvik/art.html</ref>) ist eine in [[Android]] {{Android|4.4}} eingeführte [[Wikipedia:de:Registermaschine|Registermaschine]], welche grundsätzlich die selben Aufgaben wie die derzeit verwendete [[Dalvik VM]] erfüllt. Die ART übersetzt demnach einen [[Java]]-Bytecode in maschinenlesbaren Code und führt diesen aus.


== Vorteile und Funktion ==
== Vorteile und Funktion ==
[[Datei:Dalvik_VM_ART_Vergleich.png|mini|Vergleich der Verarbeitungsgeschwindigkeit von Arraygrößen bei der Dalvik VM und ART<ref>https://docs.google.com/spreadsheet/ccc?key=0AnE-DX9Fbr9KdFZtRlhQaWxmVG5XdDR3TFR1Q3JONnc&usp=sharing#gid=0</ref>]]
[[Datei:Dalvik_VM_ART_Vergleich.png|mini|Vergleich der Verarbeitungsgeschwindigkeit von Arraygrößen bei der Dalvik VM und ART<ref>https://docs.google.com/spreadsheet/ccc?key=0AnE-DX9Fbr9KdFZtRlhQaWxmVG5XdDR3TFR1Q3JONnc&usp=sharing#gid=0</ref>]]
Der Vorteil im Vergleich zur Dalvik VM ist die Performance. Erreicht wird diese durch die vor-Compilierung des Java-Bytecodes in maschinenlesbaren Code bereits bei der Installation einer App, '''A'''head-'''o'''f-'''T'''ime (kurz '''AOT''') genannt<ref>http://www.androidpolice.com/2013/11/06/meet-art-part-1-the-new-super-fast-android-runtime-google-has-been-working-on-in-secret-for-over-2-years-debuts-in-kitkat/</ref><ref>http://winfuture.de/news,78719.html</ref>. Dadurch entfällt das bei der Dalvik VM bisher typische neu-Compilieren des App-Bytecodes bei jeder Ausführung, '''J'''ust-'''i'''n-'''T'''ime (kurz '''JIT''') genannt<ref>http://www.heise.de/newsticker/meldung/Dalvik-Nachfolger-Google-laedt-zum-Testen-der-neuen-Android-Runtime-ein-2041644.html</ref>. Da die App bereits im maschinenlesbaren Code vorliegt, ist eine Ausführung der App deutlich schneller möglich.
Der Vorteil im Vergleich zur Dalvik VM ist die Performance. Erreicht wird diese durch die vor-Compilierung des Java-Bytecodes in maschinenlesbaren Code bereits bei der Installation einer App, '''A'''head-'''o'''f-'''T'''ime (kurz '''AOT''') genannt<ref>http://www.androidpolice.com/2013/11/06/meet-art-part-1-the-new-super-fast-android-runtime-google-has-been-working-on-in-secret-for-over-2-years-debuts-in-kitkat/</ref><ref>http://winfuture.de/news,78719.html</ref>. Dadurch entfällt das bei der Dalvik VM bisher typische neu-Compilieren des App-Bytecodes bei jeder Ausführung, '''J'''ust-'''i'''n-'''T'''ime (kurz '''JIT''') genannt<ref>http://www.heise.de/newsticker/meldung/Dalvik-Nachfolger-Google-laedt-zum-Testen-der-neuen-Android-Runtime-ein-2041644.html</ref>. Da die App bereits im maschinenlesbaren Code vorliegt, ist eine Ausführung deutlich schneller möglich, da das Übersetzten aus dem Bytecode entfällt.


== Nachteile ==
== Nachteile ==
Zeile 17: Zeile 18:
[[Kategorie:Allgemein]]
[[Kategorie:Allgemein]]
[[Kategorie:Software]]
[[Kategorie:Software]]
[[Kategorie:Abkürzungen]]

Aktuelle Version vom 20. Mai 2017, 17:31 Uhr

Die Android Runtime (kurz ART[1]) ist eine in Android 4.4 KitKat "KitKat" eingeführte Registermaschine, welche grundsätzlich die selben Aufgaben wie die derzeit verwendete Dalvik VM erfüllt. Die ART übersetzt demnach einen Java-Bytecode in maschinenlesbaren Code und führt diesen aus.

Vorteile und Funktion[Bearbeiten | Quelltext bearbeiten]

Vergleich der Verarbeitungsgeschwindigkeit von Arraygrößen bei der Dalvik VM und ART[2]

Der Vorteil im Vergleich zur Dalvik VM ist die Performance. Erreicht wird diese durch die vor-Compilierung des Java-Bytecodes in maschinenlesbaren Code bereits bei der Installation einer App, Ahead-of-Time (kurz AOT) genannt[3][4]. Dadurch entfällt das bei der Dalvik VM bisher typische neu-Compilieren des App-Bytecodes bei jeder Ausführung, Just-in-Time (kurz JIT) genannt[5]. Da die App bereits im maschinenlesbaren Code vorliegt, ist eine Ausführung deutlich schneller möglich, da das Übersetzten aus dem Bytecode entfällt.

Nachteile[Bearbeiten | Quelltext bearbeiten]

Da Bytecode prinzipiell speichermäßig kleiner als Maschinencode ist, kann die Größe einer installierten App schnell auf bis zu zusätzlich 20% ansteigen. Außerdem dauert die Installation einer App länger als zuvor, da der Bytecode bereits in Maschinencode übersetzt wird[6].

Siehe auch[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]