Microsoft has announced a partnership with Canonical which sees the companies bringing user-space software more readily associated with the Linux kernel, including the popular bash shell, to Windows 10.
Announced last night during Microsoft's annual Build conference, the deal with Canonical marks a major shift for the company: it's now possible to install Canonical's Ubuntu, previously restricted to running on the Linux kernel, on Windows. Available to all through the Developer Mode on Windows Settings, the new feature is not a simple virtual machine: it allows native ELF binaries, written for Linux, to run under Windows through a translation layer - roughly equivalent to the wine project, which runs native Windows binaries on Linux.
Compared to the traditional methods of getting Linux software running on Windows - recompiling them to run under Cygwin, or running a Linux virtual machine - Microsoft claims the new feature offers a considerable advantage in performance and storage space. It also includes the bulk of Ubuntu's packages, installed via the apt package manager directly from Canonical's own repositories. Interestingly, Microsoft isn't targeting the server market with this launch: the Windows 10 Ubuntu feature is instead aimed at desktop and laptop users, primarily developers, who need access to Linux software but for whatever reason wish to keep Windows 10 as their primary operating system.
The Windows Subsystem for Linux, which Canonical's Dustin Kirkland describes
as 'nearly equivalent
' in performance to running the software natively under Linux, is freely available but, crucially, not open source. General release is scheduled for later this year as part of the Windows 10 Anniversary Update, which will also include support for running Windows Universal Apps on the Xbox One, turning any Xbox One into a development system, the ability to disable V-sync for games installed through the Windows software storefront, ad-blocking support
available through third-party plugins
in Microsoft Edge, and improved stylus support.