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.
Mechanizm działania[2][3]
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
Media użyte na tej stronie
Autor: Ency, Licencja: CC BY-SA 4.0
Praca pochodna z https://commons.wikimedia.org/wiki/File:ART_view.png - tłumaczenie na język polski