Microsoft Windows Subsystem for Linux

Microsoft Windows Subsystem for Linux is a series of Microsoft components that allow native Linux 64-bit Executable and Linkable Format (ELF64) binaries to run on the Windows kernel in the Windows 10 operating system (OS).

After enabling the Windows Subsystem for Linux feature in Windows 10, the Linux bash can be run to install the Ubuntu user-mode image that runs on top of the Windows kernel layer that allows ELF64 binaries to operate in Windows. After installation, users can run other files from the Ubuntu package repository; Linux command-line utilities such as grep, sed, and awk; navigate the Linux file system; and execute scripts using command-line interface (CLI) utilities.

Windows Subsystem for Linux includes a user-mode session manager service to handle the Linux instance, minimized (Pico) processes to handle Linux system calls and Pico drivers to emulate the Linux kernel. As a whole, this architecture enables Linux system calls to be passed into and handled by the Windows kernel.

Windows Subsystem for Linux is primarily for Linux developers operating in a Windows environment. For example, web developers often use Linux and other open-source tools but have limited access to full Linux systems for development and experimentation. Windows Subsystem for Linux lets developers use common Linux tools and advanced development languages, such as Ruby and Python, to operate through Windows.

While Linux instances can run in Windows inside a virtual machine (VM), Windows Subsystem for Linux offers two advantages. First, it requires less overhead computing resources -- processor, memory and storage -- than a full VM. Second, Windows Subsystem for Linux allows both Windows and Linux environments to run simultaneously, so developers can use Windows applications and Linux utilities on the same files if needed.

Windows Subsystem for Linux currently has several limitations. First, it does not support all Linux applications; it is intended to provide a tool to handle bash and major Linux command-line utilities. Windows Subsystem for Linux does not support Linux GUI environments such as Gnome or K Desktop Environment. Windows Subsystem for Linux only supports the Ubuntu Linux distribution at this time. In addition, Windows Subsystem for Linux is only available for Windows 10 and will not be available in Windows Server versions. While Windows Subsystem for Linux can run some Linux server applications, such as Redis as a database, it is not intended to host Linux server applications.

Windows Subsystem for Linux employs two file systems to support Linux file conventions while providing interoperability with Windows files. A file system called VolFs supports Linux file conventions including Linux permissions, links to other files, names with characters not normally accepted under Windows and the Linux directory structure. However, VolFs does not support interoperability between its files and Windows applications, but another file system called DriveFs provides that interoperability, ensuring legal Windows file names, enforcing Windows security and supporting case-sensitive file names. The directory structure of DriveFs allows users to apply either Windows or Linux tools to files at the same time.

This was last updated in August 2016

Continue Reading About Microsoft Windows Subsystem for Linux

Dig Deeper on Windows client management

Join the conversation


Send me notifications when other members comment.

Please create a username to comment.

How do you feel about Microsoft's attempts to get friendlier with developers through the Windows Subsystem for Linux?
it Is awful. super hard. I much rather use a Chromebook. download crouton. and run a simple script. plus it is sooo much more secure.
I just uninstall everything related to Microsoft on my Ubuntu 20 system and got this Error at the end of removal E: initramfs-tools: installed initramfs-tools package post-installation script subprocess returned error exit status 1. and Ubuntu ..yeah it looks like a mess

But honestly, I feel really good doing so that I want to dance, I rather use a physical calculator than using anything related to spying, controlling Microsoft along with the NT authorities or should I say bullies!