Vyvinul | Dan Bornstein |
---|---|
Vklad | android.googlesource.com/platform/dalvik |
Operační systém | Android |
životní prostředí | Android |
Číst formáty | Dalvik Executable ( d ) |
Typ | Virtuální stroj |
Distribuční politika | zabudované do chytrých telefonů a tabletů |
Licence | Licence Apache 2.0 |
webová stránka | (en) http://source.android.com/devices/tech/dalvik/index.html |
Dalvik je virtuální stroj pro mobilní telefony a dotykové tablety , který je začleněn do operačního systému Android . Dalvik má umožnit současné provádění několika aplikací na zařízení s nízkou kapacitou (málo místa v paměti a malý výpočetní výkon).
Dalvik, který vytvořil Dan Bornstein, je součástí běhového modulu , který umožňuje běh aplikací pro Android. Název je, že z rybářské vesnice na Islandu , v zemi původu jeho autora.
Dalvik nabízí alternativu k virtuálnímu stroji s technologií Java . Tyto technologie Java bytecode soubory jsou nejdříve transformovány a konsolidovány do .dex souboru ( Dalvik spustitelný ) pro použití Dalvik.
Cílem virtuálního stroje, jako je Dalvik, je umožnit spuštění stejného programu na široké škále zařízení bez ohledu na jejich technické vlastnosti. Spustitelný kód programu (známý jako bytecode ) je za běhu transformován do instrukcí specifických pro zařízení, na kterém je program spuštěn - toto je funkce kompilace virtuálního stroje just-in-time . Dalvik je jednou z klíčových komponent systému Android. Je zamýšleno umožnit simultánní spuštění několika aplikací na zařízení s nízkou kapacitou (malý paměťový prostor a malý výpočetní výkon). Průměrná kapacita současných mobilních zařízení v roce 2011 je ekvivalentní kapacitě deset let starého osobního počítače.
Technologie Java a DalvikJava je programovací jazyk určený k použití na nejrůznějších zařízeních, podle hesla „ jednou psát, běžet kdekoli “ . Programy napsané v tomto jazyce jsou překládány do bytecode, který pak bude proveden pomocí virtuální stroj, jako je ten v Oracle Java Runtime Environment . Cílem společnosti Dalvik je poskytnout alternativní virtuální stroj přizpůsobený omezením mobilních zařízení.
Dalvik provádí jiný bytecode , jehož instrukce jsou založeny na registrech , zatímco klasický virtuální stroj Java je založen na zásobníku . Registrační stroj vyžaduje méně instrukcí k provádění stejných operací jako stohovací stroj, a proto se lépe hodí pro zařízení s malým výpočetním výkonem. Kvůli tomuto rozdílu nelze běžné soubory bajtového kódu Java spouštět tak, jak to dělá Dalvik, a program obsažený v sadě Android SDK tyto soubory nejprve převede na DEX ( Dalvik Executable ) - soubory bajtového kódu pro Dalvik. Spustitelné soubory pro Dalvik (.dex) se vytvářejí sloučením souborů Java bytecode . Velikost souboru .dex je obvykle poloviční oproti souborům Java bytecode, ze kterých je odvozen.
Virtuální stroj Dalvik využívá služeb nabízených jádrem Linuxu. V systému Android je také možné vytvářet aplikace, které nepoužívají Dalvik a které přímo používají linuxové jádro, avšak tato technika nabízí několik výhod a je zřídka používána.
Všechny služby poskytované Androidem a materiální prostředky zařízení jsou poskytovány prostřednictvím společnosti Dalvik. Tento virtuální stroj funguje jako obrazovka, která skrývá technické vlastnosti zařízení, na kterém je spuštěna.
Dalvik je nahrazen ART z verze 5 Androidu vydaného vlistopadu 2014(ART je k dispozici v experimentální verzi od Androidu 4.4). V době vydání však ART nebyl kompatibilní se všemi aplikacemi pro Android.