Thursday, March 31, 2016

Linux Command Line Coming to Windows 10 ↦

It seems that Microsoft’s new-found love for Linux is even deeper than we thought:

We’re still trying to get the inside story on what Microsoft has done here, but what we’ve known for several months now is that the company has developed some Windows kernel components (lxcore.sys, lxss.sys, presumably standing for “Linux core” and “Linux subsystem,” respectively) that support the major Linux kernel APIs. These components are not GPLed and do not appear to contain Linux code themselves; instead, they implement the Linux kernel API using the native Windows NT API that the Windows kernel provides. Microsoft is calling this the “Windows Subsystem for Linux” (WSL).

A kernel API is one thing, but to be useful you need user mode applications. […] For WSL, however, Microsoft is turning to Canonical, creators of Ubuntu, for help. Canonical has provided a system image containing the Ubuntu versions of the various command-line tools that are typically found in a Linux distribution.

Our understanding is that these are not recompiled or ported versions of the programs (as are used in tools aiming to provide a Unix-like environment on Windows such as Cygwin) but instead unmodified programs. Microsoft is describing this in terms of providing a Linux-like command-line environment at the moment, but from what we can gather, there’s little fundamental restriction to this, potentially opening the door to running a wide range of Linux programs natively on Windows.

There is wide consensus in my Twitter feed that the best response for this announcement is, “It’s the year of Linux on the desktop!”