The Windows Subsystem for Linux (WSL) 2 was one of the bigger surprises of Microsoft's developer love-in, Build. The Register had a chat with the team behind Pengwin to find out what the changes mean for devs on the platform.
Pengwin (formerly WLinux) is a Debian-based Linux optimised for the original incarnation of WSL. The latest update came in April and it's fair to say that the open-source outfit was as startled as the rest of us at Microsoft's subsequent sudden lurch Linuxwards.
Where WSL 1 translated Linux system calls to the Windows kernel, WSL 2 dispenses with such shenanigans and simply includes a tuned 4.19 Linux kernel (open source, in the spirit of the new Microsoft), shorn of fripperies and maintained through Windows Update. The project also makes use of Microsoft's latest take on a snappier-starting lightweight Virtual Machine.
The Register spoke to a couple of the Microsoft boffins behind the thing, Ben Hillis and Sven Groot, who had previously worked on the ill-fated mission to get Android apps on Windows Phone. Of the cancelled project, "it probably worked a bit too well," sighed Hillis, with that faraway look Microsofties get when talking about Windows Phone, but the effort stood the team in good stead for what has become WSL 2.
As well as compatibility and some startling improvements in performance, converting an existing distribution from WSL 1 to the new world of WSL 2 is simple. Hayden Barnes and Patrick Wu of Pengwin echoed this, telling us the team does not expect to do any major refactoring of their code. To coin a phrase, it should "just work".
Like many, the gang is excited about EXT4 drive support and FUSE, with Barnes looking forward to mounting GitHub as a file system in WSL 2. The team also praised full Docker support instead of having to bridge to something running in Windows. And, of course, there is that leap in IO performance.
However, the Pengwin team also notes issues that the WSL 2 gang need to address that could leave some users sticking with WSL 1. Wu pointed out that the network sharing between Windows and the lightweight hypervisor of WSL 2 is not great right now: WSL 2 has a different IP to Windows. And, of course, storm clouds are brewing in the enterprise thanks to the use of Hyper-V. Barnes and Wu explained that VMware and VirtualBox don't play too nicely with Hyper-V, meaning WSL 1 could still end up being a better bet.
Hillis told us that Microsoft had no plans to ditch WSL 1 any time soon. It is, after all, present in the Long Term Servicing Branch of Windows and the two versions will happily co-exist. However, WSL 2 is where it's at, with the Pengwin team excited about the architectural changes that will allow Microsoft to tinker with the product further down the line.
While there are no announced plans, Barnes called out the ability to access GPUs for machine learning applications as something that would be great if the gang could, you know, get cracking on it?
And get cracking they must if WSL 2 is to make the jump from neat developer trick to full-on enterprise deployment.
For the likes of Pengwin, GitHub commits alone will not pay the mortgage. It's therefore unsurprising when Barnes said "we think now is the time for enterprises to start embracing WSL", with the challenge being to persuade people at CTO and CIO level that the tech is a good thing. The gang reckoned that their tech allows admins to manage a fleet of WSL installs just like Linux workstations thanks to the likes of Ansible and the arrival of OpenSSH (although for the latter Barnes cautioned, "it's still early.")
WSL 2 is expected to show up for Windows Insiders on the Fast Ring by the end of June, and there are mutterings that a final version could ship as an option when the 19H2 update of Windows 10 emerges in the autumn. ®