Dalvik Virtual Machine

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
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]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. 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.@1@2Vorlage:Webachiv/IABot/android.git.kernel.org
  2. http://www.scribd.com/doc/28170469/Android-Grundlagen-und-Programmierung
  3. http://developer.android.com/guide/basics/what-is-android.html
  4. Journal entry
  5. heise online: EU-Kommission gibt Oracle grünes Licht für Sun-Übernahme
  6. heise online: Oracle klagt gegen Google wegen Patent- und Urheberrechtsverletzung