on 30 March 2016



Here’s let’s break it down slowly…
“Right, so just Ubuntu running in a virtual machine?” Nope! This isn’t a virtual machine at all. There’s no Linux kernel booting in a VM under a hypervisor. It’s just the Ubuntu user space.
“Ah, okay, so this is Ubuntu in a container then?” Nope! This isn’t a container either. It’s native Ubuntu binaries running directly in Windows.
“Hum, well it’s like cygwin perhaps?” Nope! Cygwin includes open source utilities are recompiled from source to run natively in Windows. Here, we’re talking about bit-for-bit, checksum-for-checksum Ubuntu ELF binaries running directly in Windows.
[long pause]
“So maybe something like a Linux emulator?” Now you’re getting warmer! A team of sharp developers at Microsoft has been hard at work adapting some Microsoft research technology to basically perform real time translation of Linux syscalls into Windows OS syscalls. Linux geeks can think of it sort of the inverse of “wine” — Ubuntu binaries running natively in Windows. Microsoft calls it their “Windows Subsystem for Linux”. (No, it’s not open source at this time).
Oh, and it’s totally sh*t hot! The sysbench utility is showing nearly equivalent cpu, memory, and io performance.
So as part of the engineering work, I needed to wrap the stock Ubuntu root filesystem into a Windows application package (.appx) file for suitable upload to the Windows Store. That required me to use Microsoft Visual Studio to clone a sample application, edit a few dozen XML files, create a bunch of icon .png’s of various sizes, and so on.
Not being Windows developer, I struggled and fought with Visual Studio on this Windows desktop for a few hours, until I was about ready to smash my coffee mug through the damn screen!
Instead, I pressed the Windows key, typed “bash“, hit enter. Then I found the sample application directory in /mnt/c/Users/Kirkland/Downloads, and copied it using “cp -a“. I used find | xargs | rename to update a bunch of filenames. And a quick grep | xargs | sed to comprehensively search and replace s/SampleApp/UbuntuOnWindows/. And Ubuntu’s convert utility quickly resized a bunch of icons. Then I let Visual Studio do its thing, compiling the package and uploading to the Windows Store. Voila!
Did you catch that bit about /mnt/c… That’s pretty cool… All of your Windows drives, like C: are mounted read/write directly under /mnt. And, vice versa, you can see all of your Ubuntu filesystem from Windows Explorer in C:UsersKirklandAppDataLocalLxssrootfs



And while the current image is Ubuntu 14.04 LTS, we’re expecting to see Ubuntu 16.04 LTS replacing Ubuntu 14.04 in the Windows Store very, very soon.
Finally, I imagine some of you – long time Windows and Ubuntu users alike – are still wondering, perhaps, “Why?!?” Having dedicated most of the past two decades of my career to free and open source software, this is an almost surreal endorsement by Microsoft on the importance of open source to developers. Indeed, what a fantastic opportunity to bridge the world of free and open source technology directly into any Windows 10 desktop on the planet. And what a wonderful vector into learning and using more Ubuntu and Linux in public clouds like Azure. From Microsoft’s perspective, a variety of surveys and user studies have pointed to bash and Linux tools – very specifically, Ubuntu – be available in Windows, and without resource-heavy full virtualization.
Ubuntu offers all the training, software infrastructure, tools, services and support you need for your public and private clouds.
Automate your Kubernetes deployments on AWS, Azure, and Google Recently, there’s been talk about how Kubernetes has become hard to deploy and run on virtual substrates such as those offered by the public clouds. Indeed, the cloud-specific…
Today sees the first point release of Ubuntu 18.04 LTS, conveniently named 18.04.1 LTS. Point releases for an LTS include a roll-up of all bug fixes and security updates which have been pushed out since the original 18.04 LTS ISO was…
AI and ML adoption in the enterprise is exploding from Silicon Valley to Wall Street. Ubuntu is the premier platform for these ambitions — from developer workstations, to racks, to clouds and to the edge with smart connected IoT. One of…