Future versions of Windows 10 will ship with a real Linux kernel that offers dramatically better WSL performance.
“Beginning with Windows Insiders builds this Summer, we will include an in-house custom-built Linux kernel to underpin the newest version of the Windows Subsystem for Linux (WSL),” Microsoft’s Jack Hammons announced. “This marks the first time that the Linux kernel will be included as a component in Windows. This is an exciting day for all of us on the Linux team at Microsoft and we are thrilled to be able to tell you a little bit about it.”
The inclusion of a Linux kernel in Windows 10 came as a bit of a surprise, even for those of us, like me, who had been pre-briefed by Microsoft about what to expect at Build this year. Consider the following description of WSL 2, which Microsoft provided to the press ahead of the show:
“The next generation of the Windows Subsystem for Linux (WSL) will offer technology built for Microsoft Azure to the Windows Desktop to address the top customer requests for improved performance and compatibility … developers will experience up to twice as much speed for file-system heavy operations, such as Node Package Manager install.”
That doesn’t say anything about a Linux kernel, and current versions of WSL utilize an emulator, not a real Linux kernel. And based on that documentation, I wrote what I wrote earlier about this and other changes that will impact Windows 10 this year.
But a Microsoft blog post that includes a reference to this new feature explicitly mentions the new kernel, and the press didn’t see it until this morning, like everyone else.
“Windows Subsystem for Linux 2 (WSL 2) is the next version of WSL and is based on a Linux 4.19 kernel shipping in Windows … WSL 2 also improves filesystem I/O performance [and] Linux compatibility,” the post notes.
Hammons’ post goes into greater detail about the kernel. It will initially be based on version Linux 4.19, the latest long-term stable release of the platform, and it will be updated to each new long-term stable release to ensure that it’s always up-to-date. Microsoft says it is a “drop-in replacement” for the current emulator. It will also be fully open source.
“This is the culmination of years of effort from the Linux Systems Group as well as multiple other teams across Microsoft,” Hammons notes. “We are excited to be able to share the result and look forward to the new and interesting ways in which you will use WSL.”
It’s a brave new world, people. This is also probably one of the reasons that Microsoft hasn’t begun testing Windows 10 19H2 yet: This will likely be where WSL 2 is first tested and then released, and I suspect that Microsoft wanted to keep news of the Linux kernel a secret until Build.
<blockquote><em><a href="#426209">In reply to bluvg:</a></em></blockquote><p>everything changes, in IT specially fast… also people stuck in 90s stereotypes don't see it… they stuck also in google don't be evil motto, and apple = quality, reliability and durability</p>
<blockquote><em><a href="#426237">In reply to j_c:</a></em></blockquote><p>Thanks for posting that fantastic news on this Microsoft/Windows focused site. Cross that off your bucket list!</p>
<blockquote><em><a href="#426277">In reply to Stooks:</a></em></blockquote><p>Given that this entire discussion is about Microsoft embracing Linux your comment is a bit ironic. The real question is why Microsoft isn't focusing on Windows.</p>
<p>While I'm sure some of the young developers at Microsoft who were taught the Tao of the Tux in college are thrilled that they can use their preferred OS at work, I'm not sure many developers in the outside world are going to change their development habits because this has been added to Windows.</p>
<blockquote><em><a href="#426395">In reply to hrlngrv:</a></em></blockquote><p>I never make the assumption that a decision a company makes must be good or otherwise they wouldn't have made it. I'm sure the powers that be at Samsung thought releasing the Galaxy Fold was in Samsung's best interest.</p><p><br></p><p>I haven't seen anyone articulate a theory on how doing this will improve Microsoft's bottom line. If you have a theory, let's hear it.</p>
<blockquote><em><a href="#426420">In reply to hrlngrv:</a></em></blockquote><p>First, remember that developers are a minority population among Windows users. Former CS students that are dedicated to Linux are most likely to just use Linux. Unlike MS's internal developers, there's no pressure to include Windows for development. </p><p><br></p><p>Although there could be more subtle profit opportunities, the straightforward evidence that this move would be paying off for MS would be if it led to a significant increase in the number of Windows users and thus more revenue through OEM Windows purchases and profits related to the collection of personal data (if that's really a thing) and advertising through Windows. IMO, this isn't going to happen.</p>
<blockquote><em><a href="#426511">In reply to hrlngrv:</a></em></blockquote><p>WSL will be used only by devs that want to use it? I would consider that axiomatic, but it doesn't address my comment in any way I can see.</p><p><br></p><p>I think it's safe to assume people who buy a Windows machine do so because they need to run Windows applications. That would remain true whether WSL exists or not. If they are Linux developers or web developers who prefer Linux and have no need for Windows programs, they are going to buy "whiteboxes" with Linux regardless of whether WSL exists or not.</p><p><br></p><p>If they really needed both and there was no WSL, they'd just buy both kinds of PCs. So to the extent that such users exist, having WSL would probably hurt PC makers more than having it would help Microsoft.</p><p><br></p><p>I guess the evaluation comes down to what one considers "significantly many" potential users.</p>
<blockquote><em><a href="#426851">In reply to hrlngrv:</a></em></blockquote><p>There was a time perhaps 25 years ago that a Mac was plan A and a Windows PC the poor man's plan B, but I doubt that many people today just settle for Windows because they can't afford a Mac. Macs can do only a subset of what PCs can do, but that subset covers most of what the majority of users need. So for most people they are about the same but you pay more for the Apple logo.</p><p><br></p><p>I guess if a user has very modest needs for Linux they'd be OK with using a VM instead of buying two computers.</p>
<blockquote><em><a href="#426334">In reply to ghostrider:</a></em></blockquote><p>"If you can't beat 'em – MS would rather embrace Linux than fight it."</p><p><br></p><p>On the server, Linux has already won and this won't change that. On the desktop, Windows has already won and WSL or the lack of it won't change that either. So where's the fight?</p>
<blockquote><em><a href="#426393">In reply to hrlngrv:</a></em></blockquote><p>OK, so your point is …</p>
<blockquote><em><a href="#426424">In reply to llewen:</a></em></blockquote><p>As it stands now Linux, Android, iOS and MacOS have no standard cross-platform compatibility between them. So making Windows Linux-based wouldn't increase cross-platform capabilities and a Linux App store would be even more dead to ordinary users than the Windows Store is.</p>
<blockquote><em><a href="#426567">In reply to bluvg:</a></em></blockquote><p>Yes, and even Android doesn't have a whole lot in common with Linux even though it uses a Linux kernel. I think we assign too much significance to kernels with respect to compatibility. </p>
<p>I quickly lost interest in Windows Subsystem for Linux shortly after it first arrived. The home root directory was in an unintuitive place and users were not supposed to change Linux files with Windows tools for fear of breaking something because of metadata mismatches.</p><p>I want to open a terminal window, run a Bash/Python command/program from any directory, at any time, and write/read files without worrying about breaking something. Will including a new Linux kernel fix any of the previous issues or will it simply provide better performance?</p>
<blockquote><em><a href="#426524">In reply to rmac:</a></em></blockquote><p>Nobody can kill Windows except Microsoft. </p>