Today at Microsoft’s Build developer conference, the Redmond company announced some major changes to the Windows Subsystem for Linux, as well as some improvements to Windows 10 command line with the Windows Terminal. Both expand the already robust ways to develop on Windows, and offer some fantastic features and additions.

Windows Subsystem for Linux has evolved dramatically since it was first introduced as a Bash shell back in the Windows 10 Anniversary Update in 2016. Windows Subsystem for Linux, or WSL, offered native support for Linux by translating Linux system calls into Windows APIs that could be executed by Windows itself, and the feature allowed developers that required Linux to install a distro of their choice and access its command line side by side with Windows.

While the translation layer added compatibility and ease of use, one area where it could stumble would be performance, so for Microsoft’s second iteration of WSL, Microsoft is adding a custom Linux kernel to Windows itself to handle to Linux APIs. It is doing this through virtualization, with Linux running in a lightweight Hyper-V Virtual Machine (VM) that is tightly integrated into Windows, which will allow for full system call compatibility because the Linux kernel will be responding to requests, rather than having them translated.

Although this is a VM, there will be no resources to configure, and launching a shell will only take a couple of seconds to get up and running. It’ll still be able to access the Windows file system to retrieve and modify files, just like WSL v1, but also provide the capabilities to run most Linux software, such as X-Server, Docker, and more, right in Windows. As a VM, it’ll have its own network card, although it’ll be set by default to be shared with the physical NIC in the host PC for now, although that may be changed prior to WSL v2 being formally released.

The Linux kernel itself will be a custom-compiled one for Windows based on 4.19, which is the current long-term stable branch, and kernel updates will be handled through Windows Update, so no user involvement will be required to keep the Linux system up to date by the end-user.

In addition to the added compatibility, the new virtualized Linux kernel brings some hefty performance increases for tasks that are heavy on system calls, with Microsoft seeing up to 20 times better performance with WSL v2 compared to v1 when unpacking a zipped tarball, and 2 to 5 tives better performance using git clone and other projects. Plus, you can still access and edit files with Windows utilities as well, and Microsoft has been adding support to the different end of line characters for Linux vs Windows in applications like Notepad.

If you use Windows Subsystem for Linux, these changes should be all good news. There will likely be some teething pains during the transition, but Microsoft is releasing this in June to the Windows Insider Program for feedback. That program hasn’t had a great reputation at finding bugs before release in the past, but it will allow people to get some hands-on time with the changes before they roll into production. Microsoft hasn’t officially stated what release this will be a part of, but it could be as early as this fall depending on how far along the team is and how the feedback goes.

Windows Terminal
POST A COMMENT

53 Comments

View All Comments

  • Lord of the Bored - Wednesday, May 8, 2019 - link

    I certainly hope they don't. We have too few choices of operating system already. Everything is a Unix derivative or Windows. I'm actually hoping the great Linux monolith shatters and some portion of that market goes in other directions(it is probably too much to hope that they eschew copying Unix entirely). Reply
  • bigvlada - Thursday, May 9, 2019 - link

    Windows won't be assimilated into Linux community. In worst case scenario for Microsoft, it goes open source and acts similar to ReactOS. Reply
  • peevee - Thursday, May 9, 2019 - link

    "into a Linux-based operating system in much the same way Apple and Google do."

    Yeah, because Linux has been such a success on desktop and laptop. NOT AT ALL.
    And Apple does not use Linux, and Google uses only very modified kernel under layers and layers of very non-Linux stuff.
    Reply
  • bigjeff5 - Thursday, May 9, 2019 - link

    The major problem with this is backwards compatibility. This the primary reason MS dominates the desktop market. You can expect old programs to continue to run in new versions. Programs written 20 years ago still run in Windows 10 (we actually use one like this). That's no the case with e.g. Mac OS. Linux is better about this, but even many Linux distros don't particularly care about backwards compatibility.

    If MS switches to Linux wholesale like that, 90% of old programs (hell, EXISTING programs) will break. Then why would anybody choose MS? The day MS goes full Linux is the day MS stops being relevant in the desktop space.

    Integrating Linux into Windows, on the other hand, makes them MORE relevant in the PC and server market. Anybody who must use Windows and Linux on a regular basis will be inclined to think "why do I need a separate Linux OS? I can just do it all in Windows now." Doubly so if they can make firing up a Linux session quick and convenient.

    Frankly, assuming they can get performance high enough (which they are clearly focusing on), it even makes efforts like WINE almost irrelevant by solving the problem from the other direction.

    This and MS's efforts to get native compatibility with ARM based processors are real steps to ensuring Windows will remain the dominant platform for the foreseeable future.
    Reply
  • CraigInAustin - Tuesday, May 7, 2019 - link

    This IS pretty much a good thing for humans, and I mean all of us. The theoretical upside to market driven capitalism and pure socialist GPL licensing has been at an impasse for too long and an impediment to the future internet of things which is at the heart of limitless potential. Personally, I am going to participate in bridging this divide in a big way. Reply
  • domboy - Tuesday, May 7, 2019 - link

    I kind of like how the current WSL works in that it's not a full-blown VM, so I'll be interested to see how this change affects how WSL functions and how linux processes run (wonder if they'll still be visible on the windows side aka task manager). But as long as I can still setup an a WSL instance to start at system boot I'll be ok. Reply
  • Os2 - Tuesday, May 7, 2019 - link

    Windows phone is what this is. A little late wouldnt you say Nelly ? Micrograft is a joke. They going the way of IBM and General Electric. I think you should spend more on marketing. Maybe give Nelly a couple of bonuses since hes such a genius! This must be his idea. Reply
  • baka_toroi - Tuesday, May 7, 2019 - link

    >I think you should spend more on marketing.
    I don't think there's a corporation with a worse marketing department than MS.
    Reply
  • Speedfriend - Wednesday, May 8, 2019 - link

    Aah, yes poor Microsoft, nearly bankrupt, nearly gone - if it wasn't for that pesky trillion dollar market cap.... Reply
  • 1_rick - Tuesday, May 7, 2019 - link

    Oddly enough, you have been able to run X applications under Windows since the WSL came out (or maybe since Ubuntu was released for it, I can't remember which, exactly.) Use apt to install an X server and then get Xming. Hardware acceleration I could never get working but if you could live without, you could run a browser, Xemacs, even xscreensaver (although nobody tell JWZ.) Reply

Log in

Don't have an account? Sign up now