Dalvik Virtual Machine
Dalvik Virtual Machine, abgekürzt auch Dalvik VM oder DVM genannt, ist eine für mobile Geräte vorgesehene virtuelle Ausführungsumgebung in Form einer sogenannten Registermaschine. Sie ist ein Hauptbestandteil des Android-Betriebssystems in den Android-Versionen bis zu 4.x und wurde unter der Apache-Lizenz 2.0 veröffentlicht. Ab der Android-Version 5.0 wurde Dalvik durch den Ahead-of-time-Compiler Android Runtime (ART) ersetzt.
Dalvik Virtual Machine | |
---|---|
Basisdaten | |
Entwickler | Dan Bornstein |
Betriebssystem | Android |
Kategorie | Virtuelle Maschine |
Lizenz | Apache-Lizenz 2.0 |
source.android.com/devices/tech/dalvik/ |
Dalvik führt Software, die für eine Java Virtual Machine (JVM) übersetzt wurde, nach entsprechender Konvertierung in seinem eigenen Bytecode-Format aus. Die DVM wurde so entworfen, dass sie, ebenso wie moderne Prozessoren (z. B. ARM-Mikroprozessoren), Registermaschinencode verarbeiten kann und daher ressourcenschonend und schnell ist. Dies ist notwendig, da Android für jedes Programm bzw. jeden Prozess eine eigene Dalvik-VM erzeugt. Diese Registermaschine ist der Hauptunterschied zur JVM, die auf einem Kellerautomaten basiert.
Ein bedeutsamer Teil der Android-Entwicklungsumgebung (SDK) ist das Programm dx, das die Konvertierung herkömmlicher Java-Binärdateien (.class) in das Dalvik Executable-Format (.dex) durchführt. Dabei werden mehrere .class-Dateien zu einer .dex-Datei zusammengefasst und einige Optimierungen bezüglich des Speicherbedarfs vorgenommen.
Entwickelt wurde Dalvik vom Google-Mitarbeiter Dan Bornstein. Er benannte sie nach der isländischen Stadt Dalvík. Entgegen landläufiger Meinung kommt von dort jedoch keiner seiner Vorfahren, stattdessen war es ein Urlaubsort, den er attraktiv fand.
Dalvik nutzt Just-in-time-Kompilierung.