Dalvik (maszyna wirtualna)
Dalvik – maszyna wirtualna oraz środowisko uruchomieniowe systemu operacyjnego Android[1]. Dalvik był domyślną maszyną wirtualną systemów Android od wersji 1.0 Apple Pie (2008) do wersji 4.4 KitKat (2013). Od wersji 5.0 Lollipop (2014) został zastąpiony przez ART.
![](http://upload.wikimedia.org/wikipedia/commons/thumb/d/d5/ART_view-pl.png/512px-ART_view-pl.png)
Java, która jest domyślnym językiem w przypadku aplikacji systemu Android[4], wymaga, by jej kod źródłowy (.java) został skompilowany do kodu bajtowego (.class). Proces ten wykonywany jest przez program (kompilator) javac, dostępny w JDK. Następnie program dx (będący częścią Android SDK)[5] konsoliduje tak skompilowane klasy w jeden plik, charakterystyczny dla systemu Android (classes.dex). Plik classes.dex wraz z innymi zasobami (np. obrazami wyświetlanymi w aplikacji) pakowany jest do archiwum apk. W momencie instalacji pakietu apk, ma miejsce optymalizacja kodu bajtowego (zawartego w classes.dex) przez program dexopt. Tak przygotowany kod umieszczany jest w katalogu /data/dalvik-cache. Podczas każdego uruchomienia aplikacji, kod bajtowy jest ładowany do pamięci, następnie kompilowany do kodu maszynowego (w trybie JIT) oraz wykonywany.
Dalvik a maszyna JRE
Dalvik nie jest maszyną wirtualną Javy i używa własnego kodu bajtowego[6][2], jednak możliwa jest konwersja kodu bajtowego Javy do kodu Dalvika (za pomocą programu dx)[2].
Projekty podobne
Alien Dalvik to port maszyny wirtualnej Dalvik na inne systemy operacyjne niż Android[7].
Przypisy
- ↑ ART and Dalvik | Android Open Source Project. source.android.com. [dostęp 2015-09-20].
- ↑ a b c What is Dalvik and dalvik-cache?. stackoverflow.com. [dostęp 2015-09-20].
- ↑ Andrei Frumusanu: A Closer Look at Android RunTime (ART) in Android L. [dostęp 2015-09-20].
- ↑ I want to develop Android Apps - What languages should I learn?. Android Authority. [dostęp 2015-09-20].
- ↑ Tools Help | Android Developers. developer.android.com. [dostęp 2015-09-20].
- ↑ Dalvik bytecode | Android Open Source Project. source.android.com. [dostęp 2015-09-20].
- ↑ Piotr Barycki: Alien Dalvik 2.0 – piękny pomysł, który nie ma większych szans na powodzenie. [dostęp 2015-09-21].
Linki zewnętrzne
- Kod i dokumentacja
- p
- d
- e
Wersje systemu Android |
|
---|---|
Programowanie |
|
Pochodne |
|
Społeczność | |
Modyfikacje |
|
Kategorie |
|