Bash on Windows 10 was one of the big reveals at Microsoft’s recent Build conference. Since then, there’s been a lot of speculation about what Microsoft did to make this possible.
Microsoft is starting to provide more details via blog posts and a new Channel 9 video on what’s going on under the covers.
Spoiler alert: There’s no secret Linux kernel hidden in Windows 10. Instead, it’s the Windows Subsystem for Linux (WSL) that was developed by the Windows Kernel team is what provides the foundation that enabled the Linux binaries to run on Windows.
WSL includes a user mode session manager, pico provider drivers that emulate a Linux kernel and pico processes that host the unmodified user mode Linux, like Bash, as Microsoft officials explain in an April 22 blog post.
"It is the space between the user mode Linux binaries and the Windows kernel components where the magic happens," according to Microsoft’s post."By placing unmodified Linux binaries in Pico processes we enable Linux system calls to be directed into the Windows kernel. The lxss.sys and lxcore.sys drivers translate the Linux system calls into NT APIs and emulate the Linux kernel."
The Channel 9 architectural overview video and the related blog post both note that the Windows kernel does include the Drawbridge pico process/pico driver concepts. And it’s these pico processes and drivers that "provide the foundation for the Windows Subsystem for Linux."
The post and video are worth checking out for those whose hearts beat just a little quicker when they see an OS architectural diagram.