Dalvik (virtuell maskin)

Dalvik

Informasjon
Utviklet av Dan Bornstein
Innskudd android.googlesource.com/platform/dalvik
Operativsystem Android
Miljø Android
Les formater Dalvik kjørbar ( d )
Type Virtuell maskin
Distribusjonspolitikk innlemmet i smarttelefoner og nettbrett
Tillatelse Apache License 2.0
Nettsted (en) http://source.android.com/devices/tech/dalvik/index.html

Dalvik er en virtuell maskin for mobiltelefoner og berøringsbrett , som er innlemmet i Android- operativsystemet . Dalvik er ment å tillate samtidig kjøring av flere applikasjoner på en enhet med lav kapasitet (lite minne og lite datakraft).

Dalvik er laget av Dan Bornstein og er en del av kjøretiden , motoren som gjør det mulig for Android-applikasjoner å kjøre. Den Navnet er som en fiskerlandsby i Island , landet av forfatteren.

Dalvik tilbyr et alternativ til den virtuelle Java-teknologimaskinen . Java-teknologi- bytecode- filer blir først transformert og konsolidert til en .dex-fil ( Dalvik Executable ) for bruk av Dalvik.

Presentasjon

Målet med en virtuell maskin som Dalvik er å gjøre det mulig å kjøre det samme programmet på et bredt utvalg av enheter, uavhengig av deres tekniske egenskaper. Programmets kjørbare kode (kjent som bytecode ) transformeres i fly til instruksjoner som er spesifikke for enheten som programmet kjøres på - dette er just-in-time kompileringsfunksjonen til den virtuelle maskinen. Dalvik er en av nøkkelkomponentene i Android. Det er ment å tillate samtidig kjøring av flere applikasjoner på en enhet med lav kapasitet (lite minne og lite datakraft). Gjennomsnittlig kapasitet for moderne 2011 mobile enheter tilsvarer kapasiteten til en ti år gammel personlig datamaskin.

Den Java-teknologi og Dalvik

Java er et programmeringsspråk beregnet på bruk på et bredt utvalg av enheter, i henhold til mottoet skriv en gang, kjør hvor som helst  " . Programmer skrevet på dette språket oversettes til bytecode som deretter kjøres av en virtuell maskin som den i Oracle's Java Runtime Environment . Dalviks mål er å tilby en alternativ virtuell maskin, tilpasset begrensningene til mobile enheter.

Dalvik utfører en annen bytekode , hvis instruksjoner er basert på registre , mens den klassiske Java-teknikken virtuell maskin er basert på stabelen . En registermaskin krever færre instruksjoner for å utføre de samme operasjonene som en stabelmaskin, og er derfor bedre egnet for en enhet med liten datakraft. På grunn av denne forskjellen kan vanlige Java-bytecode-filer ikke kjøres som de er av Dalvik, og et program som er inkludert i Android SDK, forvandler først disse filene til DEX ( Dalvik Executable ) - bytecode-filene for Dalvik. Kjørbare filer for Dalvik (.dex) opprettes ved å konsolidere Java bytecode- filer . Størrelsen på .dex-filen er vanligvis halvparten av størrelsen på Java bytecode-filene den er hentet fra.

Den virtuelle Dalvik-maskinen bruker tjenestene som tilbys av Linux-kjernen. I Android er det også mulig å lage applikasjoner som ikke bruker Dalvik, og som bruker Linux-kjernen direkte, men denne teknikken gir få fordeler og brukes sjelden.

Alle tjenestene som tilbys av Android, så vel som materiellmidlene til enhetene, blir gjort tilgjengelig gjennom Dalvik. Denne virtuelle maskinen fungerer som en skjerm som skjuler de tekniske egenskapene til enheten den kjøres på.

Dalvik erstattes av ART fra versjon 5 av Android utgitt inovember 2014(ART er tilgjengelig i eksperimentell versjon fra Android 4.4). Når den ble utgitt, var ART imidlertid ikke kompatibel med alle Android-apper.

Referanser

  1. (en) Satya Komatineni og 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. (no) Onur Cinar, Android-apper med Eclipse , Apress - 2012 ( ISBN  9781430244356 ) .
  4. (no) Sheran Gunasekera, Android Apps Security ( ISBN  9781430240624 ) .

Se også

Eksterne linker