The development of Windows Subsystem for Linux was heralded as Microsoft’s Road to Damascus moment when the company finally gave up the fight against Linux and saw it as a tool rather than an enemy.
Interestingly however the technology had much more controversial origins, in Project Astoria, Microsoft’s attempt to keep Windows Phone alive by bringing support for Android apps to the OS.
Revealed in April 2015 and then confirmed at Build 2015, the technology emulated Android syscalls, translating them to Windows Phone API calls, and was surprisingly effective (some say too effective).
In 2016 Microsoft confirmed that they are no longer developing Project Astoria, with Kevin Gallo from Windows team today provided the following reason:
We received a lot of feedback that having two Bridge technologies to bring code from mobile operating systems to Windows was unnecessary, and the choice between them could be confusing. We have carefully considered this feedback and decided that we would focus our efforts on the Windows Bridge for iOS and make it the single Bridge option for bringing mobile code to all Windows 10 devices, including Xbox and PCs. For those developers who spent time investigating the Android Bridge, we strongly encourage you to take a look at the iOS Bridge and Xamarin as great solutions.
Nothing came of the Windows Bridge for iOS in the end, which would have required that developers recompile their apps for Windows Phone, vs simply running Android binaries on the OS.
Surprisingly however it was the cancelled Project Astoria which went on to bigger and better things, with the API translation technology being used for the first version of Windows Subsystem for Linux (WSL 2 used the Linux kernel directly).
The news was revealed by Ben Hill, Senior Software Engineer at Microsoft, on the celebrateubuntu podcast, which can be seen below: