Android runs atop a Linux kernel. Android applications are written in the Java
programming language, and they run within a virtual machine (VM). Each Android
application runs within an instance of the Dalvik VM (an open source technology), which in
turn resides within a Linux-kernel managed process.