Logo hu.androidermagazine.com
Logo hu.androidermagazine.com

Android a-tól z-ig: mi a dalvik

Anonim

Mi az a Dalvik? Azt halljuk, hogy ezt a szót sokat dobják körül az interneten, amikor az Androidról és annak belső működéséről beszélünk. Noha nincs egyszerű magyarázat, amit csak néhány bekezdésben tudunk adni, lefedhetjük az alapokat, és a helyes irányba mutathatunk, ha elegáns oldalán kell táplálkoznunk. A legegyszerűbben szólva, a Dalvik egy virtuális gép, amely Java-ban írt alkalmazásokat és kódot futtat. A szokásos Java fordító a forráskódot (szöveges fájlként írva) Bytecode-ba konvertálja, majd egy.dex fájlba fordítja, amelyet a Dalvik virtuális gép képes olvasni és használni. Lényegében az osztályfájlokat konvertáljuk.dex fájlokká (hasonlóan egy jar fájlba, ha egy szokásos Java virtuális gépet használnánk), majd a Dalvik virtuális gép elolvassa és végrehajtja. Az osztályfájlokban használt ismétlődő adatok csak egyszer kerülnek be a.dex kimenetbe, ez helytakarékos és kevesebb ráfordítást igényel. A futtatható fájlok egy alkalmazás telepítésekor újra módosíthatók, hogy a mobilitást még optimalizálják. Az olyan dolgok, mint a bájtsorrend, az adatszerkezet és a függvénytárak cseréje és összekapcsolása, a fájlok kisebbekké válnak, és az eszközökön jobban futnak. A Dalvik virtuális gép az első oldalról készült, az Android szem előtt tartva.

Megzavarodott még? Nem érzi magát rosszul, a geeky programozási beszélgetésnek általában ennek a hatása van. Gondolj bele erre: amikor egy Java alkalmazást épít a számítógépéhez, a Java virtuális gép futtatja a forráskód fordított kimenetét. Ez az oka annak, hogy a Java szinte minden operációs rendszert futtat. A Dalvik a Java virtuális gép mobiljára optimalizált verziója, az Apache Harmony projekt kódjával építve, amely nyílt forrású és jobban fut, mint egy szokásos Java virtuális gép korlátozott hardverén, amelyet úgy terveztek, hogy egynél többet is futtasson. a virtuális gép példánya egyszerre - azaz multitasking. Mivel a Dalvik nyílt forráskódú, azt más operációs rendszerekre is átvitték, például a BlackBerry PlayBookon. Elég rohadt bonyolult, nagyon rohadt hűvös, és az Oracle (az a cég, amely a Java-t a Sun-tól vásárolta) utálja.

Az Android a Dalvikot használja, mert míg a szokásos Java virtuális gép licence GPL2 (ingyenes és nyílt forrású), mobil eszközbe helyezve és a Java Micro Edition használatával nem. A Google és az Oracle közötti nagy vita Dalvik körül zajlik. A Google azt állítja, hogy azt egy "tiszta szoba" környezetben írták, az Oracle kódjának használata nélkül, és az Oracle nem ért egyet. Azt állítják, hogy fogalma sincs, mi csak örülünk, hogy jól működik.