The Android architecture consists of 4 main layers: the Linux kernel layer, native libraries layer, Android runtime layer, and applications layer. The Linux kernel layer acts as an interface between hardware and software and provides core system functionality. Above this is the native libraries layer which includes libraries for graphics, media playback, and more. Next is the Android runtime layer, which originally used the Dalvik virtual machine to execute apps. The top layer is the applications layer, where end-user apps are built using the services of the lower layers.