Android is a software stack consisting of key applications, hardware and software. It was developed by the Open Handset Alliance and first deployed on the HTC Dream phone. Android uses Java and a modified version of the Linux kernel. It includes libraries, an Android runtime using the Dalvik virtual machine, and an application framework providing services to applications. Developers write Android apps to run on the applications layer.