Posts: 397 +75
Have you ever wanted to run Android on an iPhone? Back in 2008, enterprising hackers were able to port the Linux kernel to Apple's original iPhone. The developers behind that effort, David Wang and Chris Wade, are continuing that work with Project Sandcastle.
Wang and Wade are co-founders of Corellium, a mobile device virtualization startup that's currently being sued by Apple for selling iOS virtual machines (VMs). Apple is accusing Corellium of violating their intellectual property rights by creating unlicensed replicas. It is the virtualization of iOS that has contributed to Project Sandcastle.
"We would not have been able to port Android nearly so quickly, if at all, without relying on Corellium’s revolutionary mobile device virtualization platform. Our platform creates software-based models of mobile device hardware, enabling users to run ARM-based operating systems on ARM-based enterprise servers. This groundbreaking advancement empowers engineers with scalability, efficiency, and innovative new tools for research, testing, training, and development purposes.
By leveraging our virtual devices, along with our deep knowledge of both the Android OS and the iPhone hardware, we were able to rapidly iterate to bring Android to life."
Most Android ports are possible because of the shared SoC architecture. If you can install Android on a specific ARM or an x86 chip, then it's relatively easy to port it to other devices running the same architecture.
For example, Android was successfully ported to the Nintendo Switch last year because it has the same Nvidia Tegra chip as Nvidia's own Shield TV. Porting Android to the iPhone required writing numerous drivers to interface with the hardware and Apple's proprietary APFS file system.
For now, the initial builds are in beta and work best on the iPhone 7 and 7 Plus. There is a status page that shows the compatibility with all devices from the iPhone 6 all the way up to 11 Pro. Needless to say, these are extremely early builds so those interested may not want to install just yet.