Android runs ON Linux?
Android runs the Linux Kernel for the core system and it can be (and is) optimized for various platforms (compiled for ARM, x86, x64, PPC, etc).
Here is a fantastic graphic to demonstrate this for you:


Source: Post on Unix.SE
Android relies on Linux version 2.6 for core system services such as security, memory management, process management, network stack, and driver model. The kernel also acts as an abstraction layer between the hardware and the rest of the software stack.
Source: http://developer.android.com/guide/basics/what-is-android.html
And my comment on your second sentence is that Linux Kernel is not meant for only desktop operating systems. Its use cases vary from Desktop OS to Servers, mainframes and supercomputers to Embedded Devices.
Linux is a widely ported operating system kernel. Due to its low cost and ease of customization, the Linux kernel is used on a highly diverse range of computer architectures: in the hand-held devices and the mainframe Systems, in devices ranging from mobile phones to supercomputers.
On the other note: Palm (later acquired by HP) use Linux-derived operating system, webOS, which is used into its line of Palm Pre smartphones. Several network firewalls and routers from makers such as Cisco/Linksys use customized linux kernel. There are tons of devices out there which are using embedded linux.