Microsoft built a Linux subsystem for Windows for Project Astoria, its system for running Android apps on Windows 10 Mobile.
But in February the company confirmed that Astoria was dead, as it rather undermined the Universal Windows Platform concept. At the time, we speculated that portions of Astoria might live on, as portions of it had mysteriously started showing up in Windows Insider Previews. And today, that has come to pass, with Microsoft saying that the Windows 10 Anniversary Update will include the ability to run the popular bash shell from Unix, along with the rest of a typical Unix command-line environment.
We're still trying to get the inside story on what Microsoft has done here, but what we've known for several months now is that the company has developed some Windows kernel components (lxcore.sys, lxss.sys, presumably standing for "Linux core" and "Linux subsystem," respectively) that support the major Linux kernel APIs. These components are not GPLed and do not appear to contain Linux code themselves; instead, they implement the Linux kernel API using the native Windows NT API that the Windows kernel provides. Microsoft is calling this the "Windows Subsystem for Linux" (WSL).