Dalvik (virtuální stroj)

Dalvik

Informace
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.

Prezentace

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 Dalvik

Java 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.

Reference

  1. (en) Satya Komatineni a Dave MacLean, Pro Android 4 , Apress - 2012 ( ISBN  978-1-4302-3930-7 ) .
  2. (en) Reto Meier, Professional Android 4 Application Development , John Wiley & Sons - 2012 ( ISBN  9781118223857 ) .
  3. (en) Onur Cinar, aplikace pro Android s Eclipse , Apress - 2012 ( ISBN  9781430244356 ) .
  4. (en) Sheran Gunasekera, Android Apps Security ( ISBN  9781430240624 ) .

Podívejte se také

externí odkazy