Single Android
Introduction
The below tutorial outlines how to run single instance of virtualized Android on Google Galaxy Nexus[i9250] phone, using the pre-built binaries as well as the sources.
Demonstration details
- The following demo is for Google Galaxy Nexus phone, having OMAP 4460 processors.
- We will run single instance of virtualized Android kernel over the Codezero hypervisor.
- Android kernel as well as the filesystem are based on android_4.0.3-r1/ICS AOSP release by Google.
Hardware requirements
- Google Galaxy Nexus mobile phone.
- Micro-USB to USB converter.
Downloading the pre-built binaries
Download binaries from here. It contains the following files
system.img– Android filesystem’s system binary imageuserdata.img– Android filesystem’s userdata binary imageramdisk.img– Android filesystem’s system ramdisk imageImage– ELF file containing Codezero, and Android kernels and ramdisk.img
Setting up the demo
Install AOSP tools and configure fastboot device access by following the Installing AOSP host tools and Configuring USB Access sections of the Initializing the Host Environment page.
Connect the phone to the host machine via Micro-USB to USB converter. Press Volume UP, Volume Down and Power keys of the phone simultaneously, making the phone go into the fastboot mode.
Flash kernel and filesystem binaries and boot the phone
$ fastboot erase cache
$ fastboot flash system system.img
$ fastboot flash userdata userdata.img
$ mkbootimg --kernel Image --ramdisk ramdisk.img -o paravirt-boot.img
$ fastboot flash boot paravirt-boot.img
$ fastboot reboot
Building from sources
Check the Building from Source for Galaxy Nexus page for instructions on building Codezero and Android kernels from the sources.

