Dalvik Virtual Machine
Dalvik Virtual Machine | |
---|---|
Basisdaten
| |
Entwickler | Dan Bornstein |
Betriebssystem | Android |
Kategorie | Virtuelle Maschine |
Lizenz | Apache-Lizenz 2.0 |
source.android.com/devices/tech/dalvik/ |
Dalvik Virtual Machine (abgekürzt Dalvik VM oder DVM) 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.[1] Ab der Android-Version 5.0 wurde Dalvik durch den Ahead-of-time-Compiler Android Runtime (ART) ersetzt.
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.[2] Dies ist notwendig, da Android für jedes Programm bzw. jeden Prozess eine eigene Dalvik-VM erzeugt.[3] 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.[4]
Dalvik nutzt Just-in-time-Kompilierung.
Rechtsstreit[Bearbeiten | Quelltext bearbeiten]
Die Firma Oracle, die Anfang 2010 mit der Übernahme von Sun Microsystems[5] auch die Rechte an Java übernahm, beschuldigte Google, mit der Entwicklung der Dalvik-VM Patente und Urheberrechte von Java verletzt zu haben. Oracle reichte am 12. August 2010 Klage gegen Google ein.[6] Im Mai 2012 wurde der Streit beigelegt, nachdem sowohl die Jury als auch der Richter befunden hatten, dass seitens Google kein rechtswidriges Verhalten stattgefunden habe.
Dalvik Turbo virtual machine[Bearbeiten | Quelltext bearbeiten]
Dalvik Turbo virtual machine ist eine alternative Implementierung durch den Schweizer Softwarehersteller Myriad Group. Die Software wurde von MIPS Technologies/Imagination Technologies für ihre MIPS-Architektur lizenziert.
Weblinks[Bearbeiten | Quelltext bearbeiten]
- Projektübersicht zu Dalvik VM bei Google Code (englisch)
- Dalvik VM Internals (englisch) (Video)
- Dalvik-Anforderungen (englisch)
- Dex-Dateiformat (englisch) – veraltet
Einzelnachweise[Bearbeiten | Quelltext bearbeiten]
- ↑ Archivlink (Memento des Originals vom 17. April 2009 im Internet Archive) Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- ↑ http://www.scribd.com/doc/28170469/Android-Grundlagen-und-Programmierung
- ↑ http://developer.android.com/guide/basics/what-is-android.html
- ↑ Journal entry
- ↑ heise online: EU-Kommission gibt Oracle grünes Licht für Sun-Übernahme
- ↑ heise online: Oracle klagt gegen Google wegen Patent- und Urheberrechtsverletzung