BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Microsoft Brings Linux to the Desktop

Microsoft Brings Linux to the Desktop

This item in japanese

Bookmarks

(Update:  See below for new information released after the original post.)

Today at Build, Microsoft announced that the Anniversary Update to Windows 10 will provide the ability to seamlessly run Linux binaries on Windows 10 systems.  For years pundits and developers alike have speculated as to how and when Linux would reach greater mainstream popularity on the average PC user’s desktop.  With today’s news, it would seem that Microsoft itself has become a driving force.

Microsoft partnered with Canonical to develop the ability to use binaries that include the popular Bash shell and Emacs unmodified.  During today’s Build 2016 keynote Microsoft’s Kevin Gallo demonstrated how he is able to open a standard Bash prompt on Windows, and from there run GNU Emacs.  Gallo observed that this is real Linux compatibility—not coming through a port or virtual machine.

Microsoft’s Scott Hanselman posted a quick follow up announcement to elaborate on some of the details.  As Ubuntu is a descendant of the Debian Linux distribution, the familiar package installer apt-get is available.  Just like on a Linux desktop, Windows users will be able to install new packages via apt-get.  Exact specifications for the Windows 10 environment needed to host Linux binaries have yet to be released—based on screenshots it would appear that at minimum 64-bit Linux binaries are supported.  Whether 32-bit Linux binaries are supported has yet to be confirmed but aaccording to Hanselman it appears that 64-bit Windows will be required.

To try this functionality out yourself, look for the Windows 10 Anniversary Update coming this summer.

Update:  Microsoft’s Rich Turner and Russ Alexander have provided more details through their Channel 9 presentation, “Running Bash on Ubuntu on Windows!”.  The project originated from requests submitted via User Voice.  The two main themes were a better console and adding UNIX/Linux tools to Windows.  As a result they have built a new subsystem in the Windows kernel to expose the system calls necessary to support the Linux tools. 

This new system is called the Windows Subsystem for Linux, and was created through a joint effort between Microsoft and Canonical that provides  "UserMode Linux”.  This new subsystem “exposes a Linux-compatible syscall layer”.

The pair have made clear that it is NOT a virtual machine or emulated system and their demo is using Ubuntu 14.04.4 LTS.  If you are interested in watching this firsthand, their video shows various programs being run natively—GNU compiler, Vi text editor, and mounting the local filesystem in Linux.  Some items are not yet supported, so programs like MySQL are not yet running but the team continues working to improve the experience.

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • Linux or Linux Apps?

    by Mac Noodle,

    • Linux or Linux Apps?

      by Mac Noodle,

      Your message is awaiting moderation. Thank you for participating in the discussion.

      The great thing about linux? not really the apps per se. Are they gonna bring daemons and cron? I mean, just dump windows and call linux Windows 11.

    • Misleading Title

      by Pavel Henkin,

      Your message is awaiting moderation. Thank you for participating in the discussion.

      I think 'Microsoft Brings Linux to the Desktop' is a nonsensical title. Linux has been on the desktop for decades. MS is bringing Linux to.. Windows!

    • Re: Linux or Linux Apps?

      by Georgii Kalnytskyi,

      Your message is awaiting moderation. Thank you for participating in the discussion.

      I'm really not that familiar with Linux (*nix) world, but can't cron be replaced by Task Scheduler (and PowerShell if needed), and aren't Services essentially Windows daemons?

    • Re: Linux or Linux Apps?

      by Mac Noodle,

      Your message is awaiting moderation. Thank you for participating in the discussion.

      They are similar. The difference is that they work and work well (i.e. Scheduler wont run a task some times and wont tell you why). Of course, that is mostly probably because of Linux. Daemons are MUCH easier to create/start stop. Since i am sure you know how to create a Windows service, here is how easy it is in linux - docs.spring.io/spring-boot/docs/current/referen....

    • Re: Linux or Linux Apps?

      by Abel Avram,

      Your message is awaiting moderation. Thank you for participating in the discussion.

      I think the reason Microsoft is doing this is not that Linux provides some functionality that Windows does not or can't provide, but the fact that cloud computing is based mainly on Linux machines administered through Linux tools. If ops personnel get their admin tools running on Windows, they won't have to switch to Linux.

      Losing the battle on mobile forces Microsoft to reconsider their strategy. They need to get a good share in the cloud or they are out of the game. Right now, they still have a market for Windows through legacy applications and pure inertia. 90% of the people (not devs) do not need Windows. Any laptop with a browser will do. And they do not need Office either. The free GDocs is more than enough. Actually very few people need all the power of the Office.

      What happens now reminds me of Netscape vs Microsoft in 1995. Netscape wanted the browser to be the interface to the world. They were 20 years early. The network speed was not there and the HTML tools were not there. It happens now. Windows is loosing its relevance. (Devs working on Windows still need it, but they are a small minority in the world's population.)

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT