Salah satu elemen kunci dari android adalah Dalvic Virtual
Machine (DVM). Android berjalan di dalam Dalvik Virtual Machine (DVM) bukan di
Java Virtual Machine (JVM), sebenarnya banyak persamaannya dengan Java Virtual
Machine (VM) seperti Java ME (Java Mobile Edition), tetapi android menggunakan
Virtual Machine sendiri untuk memastikan bahwa beberapa feature-feature
berjalan lebih efisien pada perangkat mobile.
Dalvik Virtual Machine (DVM) adalah “register bases”
sementara Java Virtual Machine (JVM) adalah “Stack based”, DVM didiseain dan
ditulis oleh Dan Bornsten dan beberapa engineers Google lainnya. Jadi, bisa
kita katakan “Dalvik equals(Java) == False”. Dalvik Virtual Machine menggunakan
kernel linux untuk menangani fungsionalitas tingkat rendah termasuk keamanan,
treadhing, dan proses serta manajemen memori. Ini memungkinkan kita untuk
menulis Aplikasi C/C+ sama halnya seperti pada OS Linux kebanyakan. Meskipun dalam
kenyataannya kita harus banyak memahami Arsitektur dan proses sistem dari
kernel linux yang digunakan dalam android tersebut.
Semua hardware yang berbasis android dijalankan dengan
menggunakan Virtual Machine untuk eksekusi aplikasi, pengembang tidak perlu
khawatir tentang implementasi perangkat keras tertentu. Dalvik Virtual Machine
mengeksekusi executable file, sebuah format yang dioptimalkan untuk memastikan
memori yang digunakan sangat kecil. The ececutable file diciptakan dengan
mengubah kelas bahasa java dan dikompilasi menggunakan tools yang disediakan
dalam SDK Android.
Source : android.book
