Windows Subsystem for Linux

Compatibility layer for running Linux binary executables natively on Windows

This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)

This article needs to be updated. Please help update this article to reflect recent events or newly available information. (June 2021)

|

This article's lead section may be too short to adequately summarize the key points. Please consider expanding the lead to provide an accessible overview of all important aspects of the article. (February 2022)

|

The neutrality of this article is disputed. Relevant discussion may be found on the talk page. Please do not remove this message until conditions to do so are met. (May 2024) (Learn how and when to remove this message)

|

(Learn how and when to remove this message)

Windows Subsystem for Linux

Bash running on Windows 10

Other names| WSL
Developer(s)| Microsoft
Initial release| August 2, 2016; 8 years ago (2016-08-02)
Stable release|

WSL 2 2.2.4 / April 25, 2024; 5 months ago (2024-04-25)[1]

Preview release|

WSL 2 2.3.11 / July 17, 2024; 2 months ago (2024-07-17)[2]

Repository| github.com/microsoft/WSL2-Linux-Kernel
Operating system| Windows 10, Windows 10 LTSB/LTSC, Windows Server 2016, Windows Server 2019, Windows 11, Windows Server 2022, Windows Server 2025
Predecessor| Windows Services for UNIX
Type| Compatibility layer, virtualization
License| Subsystem: Proprietary commercial software;
Linux kernel: GNU GPLv2 (only) with some code under compatible GPL variants or under permissive licenses like BSD, MIT
Website| learn.microsoft.com/windows/wsl

Windows Subsystem for Linux (WSL) is a feature of Microsoft Windows that allows developers to run a Linux environment without the need for a separate virtual machine or dual booting. There are two versions of WSL: WSL 1 and WSL 2. WSL is not available to all Windows 10 users by default. It can be installed either by joining the Windows Insider program or manually via Microsoft Store or Winget.[3]

WSL 1 was first released on August 2, 2016, and acted as a compatibility layer for running Linux binary executables (in ELF format) by implementing Linux system calls in the Windows kernel.[4] It is available on Windows 10, Windows 10 LTSB/LTSC, Windows 11,[5] Windows Server 2016, Windows Server 2019 and Windows Server 2022.

In May 2019, WSL 2 was announced,[6] introducing important changes such as a real Linux kernel,[7] through a subset of Hyper-V features. WSL 2 differs from WSL 1 in that WSL 2 runs inside a managed virtual machine that implements the full Linux kernel. As a result, WSL 2 is compatible with more Linux binaries than WSL 1, as not all system calls were implemented in WSL 1. Since June 2019, WSL 2 is available to Windows 10 customers through the Windows Insider program, including the Home edition.[8]

## History

[edit]

Microsoft's first foray into achieving Unix-like compatibility on Windows began with the Microsoft POSIX Subsystem, superseded by Windows Services for UNIX via MKS/Interix, which was eventually deprecated with the release of Windows 8.1. The technology behind Windows Subsystem for Linux originated in the unreleased Project Astoria, which enabled some Android applications to run on Windows 10 Mobile.[9] It was first made available in Windows 10 Insider Preview build 14316.[10]

Whereas Microsoft's previous projects and the third-party Cygwin had focused on creating their own unique Unix-like environments based on the POSIX standard, WSL aims for native Linux compatibility. Instead of wrapping non-native functionality into Win32 system calls as Cygwin did, WSL's initial design (WSL 1) leveraged the NT kernel executive to serve Linux programs as special, isolated minimal processes (known as "pico processes") attached to kernel mode "pico providers" as dedicated system call and exception handlers distinct from that of a vanilla NT process, opting to reutilize existing NT implementations wherever possible.[11]

WSL beta was introduced in Windows 10 version 1607 (Anniversary Update) on August 2, 2016. Only Ubuntu (with Bash as the default shell) was supported. WSL beta was also called "Bash on Ubuntu on Windows" or "Bash on Windows". WSL was no longer beta in Windows 10 version 1709 (Fall Creators Update), released on October 17, 2017. Multiple Linux distributions could be installed and were available for install in the Windows Store.[12]

In 2017 Richard Stallman expressed fears that integrating GNU functionality into Windows will only hinder the development of free software, calling efforts like WSL "a step backward in the campaign for freedom."[13]

Though WSL (via this initial design) was much faster and arguably much more popular than the previous UNIX-on-Windows projects, Windows kernel engineers found difficulty in trying to increase WSL's performance and syscall compatibility by trying to reshape the existing NT kernel to recognize and operate correctly on Linux's API. At a Microsoft Ignite conference in 2018, Microsoft engineers gave a high-level overview of a new "lightweight" Hyper-V VM technology for containerization where a virtualized kernel could make direct use of NT primitives on the host.[14] In 2019, Microsoft announced a completely redesigned WSL architecture (WSL 2) using this lightweight VM technology hosting actual (customized) Linux kernel images, claiming full syscall compatibility.[7] Microsoft announced WSL 2 on May 6, 2019,[6] and it was shipped with Windows 10 version 2004.[15] It was also backported to Windows 10 version 1903 and 1909.[16]

GPU support for WSL 2 to run GPU-accelerated machine learning was introduced in Windows build 20150.[17] GUI support for WSL 2 to run Linux applications with graphical user interfaces (GUIs) was introduced in Windows build 21364.[18] Both of them are shipped in Windows 11.

In April 2021, Microsoft released a Windows 10 test build that also includes the ability to run Linux graphical user interface (GUI) apps using WSL 2 and CBL-Mariner.[19][18] The Windows Subsystem for Linux GUI (WSLg) was officially released at the Microsoft Build 2021 conference. It is included in Windows 10 Insider build 21364 or later.[20]

Microsoft introduced a Microsoft Store version of WSL on October 11, 2021, for Windows 11.[21] It reached version 1.0.0 on November 16, 2022 with added support for Windows 10.

### Notable releases

[edit]

WSL as a Windows component  Release / Feature | Preview build | Public build

|
|

WSL (Beta) (Bash on Ubuntu on Windows) | Windows 10 build 14316 | Windows 10 version 1607 (Anniversary Update)
WSL (no longer Beta) | Windows 10 build 16251 | Windows 10 version 1709 (Fall Creators Update)
WSL 2 (lightweight VM) | Windows 10 build 18917 | Windows 10 version 2004 (also backported to 1903 and 1909)
WSL 2 GPU support | Windows 10 build 20150 | Windows 11 (also Windows 10 21H2)
WSL 2 GUI support (WSLg) (last version) | Windows 10 build 21364 | Windows 11
WSL as a Windows Store app  Version | Comment

|

0.47.1 | First version
0.67.6 | systemd support
1.0.0 | Generally available; Windows 10 support

## Features

[edit]

Bash running on Windows 10

WSL is available in Windows Server 2019 and in versions of Windows 10 from version 1607, though only in 64-bit versions.

Microsoft envisages WSL as "primarily a tool for developers – especially web developers and those who work on or with open source projects".[22] In September 2018, Microsoft said that "WSL requires fewer resources (CPU, memory, and storage) than a full virtual machine" (which prior to WSL was the most direct way to run Linux software in a Windows environment), while also allowing users to use Windows apps and Linux tools on the same set of files.[22]

The first release of WSL provides a Linux-compatible kernel interface developed by Microsoft, containing no Linux kernel code, which can then run the user space of a Linux distribution on top of it, such as Ubuntu,[23][24][25][26] openSUSE,[27] SUSE Linux Enterprise Server,[28][29][12] Debian[30] and Kali Linux.[31] Such a user space might contain a GNU Bash shell and command language, with native GNU command-line tools (sed, awk, etc.), programming-language interpreters (Ruby, Python, etc.), and even graphical applications (using an X11 server at the host side).[22]

The architecture was redesigned in WSL 2,[6] with a Linux kernel running in a lightweight virtual machine environment.

### wsl.exe

[edit]

The `wsl.exe` command is used to manage distributions in the Windows Subsystem for Linux on the command-line. It can list available distributions, set a default distribution, and uninstall distributions.[32] The command can also be used to run Linux binaries from the Windows Command Prompt or Windows PowerShell.[33] `wsl.exe` replaces `lxrun.exe` which is deprecated as of Windows 10 1803 and later.[34]

### WSLg

[edit]

Windows Subsystem for Linux GUI (WSLg) is built with the purpose of enabling support for running Linux GUI applications (X11 and Wayland) on Windows in a fully integrated desktop experience.[35] WSLg was officially released at the Microsoft Build 2021 conference and is included in Windows 10 Insider build 21364 or later.[20] However, with the introduction of Windows 11, WSLg is finally shipping with a production build of Windows, bringing support for both graphics and audio in WSL apps.[36] FreeRDP is used to encode all communications going from the Remote Desktop Protocol (RDP) Server (in Weston) to the RDP Client (msrdc on Windows[37]) according to the RDP protocol specifications.[38]

Prerequisites for running WSLg include:

* Windows 11 or Windows 10 Insider Preview builds 21362–21390.[35][39]
* A system with virtual GPU (vGPU) enabled for WSL is recommended, as it will allow benefits from hardware accelerated OpenGL rendering.[35]

## Design

[edit]

### WSL 1

[edit]

Firefox for Linux running on WSL

LXSS Manager Service is the service in charge of interacting with the subsystem (through the drivers `lxss.sys` and `lxcore.sys`), and the way that Bash.exe (not to be confused with the Shells provided by the Linux distributions) launches the processes, as well as handling the Linux system calls and the binary locks during their execution.[40] All processes invoked by a particular user go into a so called "Linux Instance" (usually the first invoked process is init). Once all the applications are closed, the instance is closed.

WSL 1's design featured no hardware emulation / virtualization (unlike other projects such as coLinux) and makes direct use of the host file system (through `VolFS` and `DrvFS`)[41] and some parts of the hardware, such as the network, which guarantees interoperability. Web servers for example, can be accessed through the same interfaces and IP addresses configured on the host, and shares the same restrictions on the use of ports that require administrative permissions, or ports already occupied by other applications.[42] There are certain locations (such as system folders) and configurations whose access/modification is restricted, even when running as root, with sudo from the shell. An instance with elevated privileges must be launched in order to get "sudo" to give administrator privileges, and allow such access.[22]

WSL 1 is not capable of running all Linux software, such as 32-bit binaries,[43][44] or those that require specific Linux kernel services not implemented in WSL. Due to a total lack of Linux in WSL 1, kernel modules, such as device drivers, cannot be run. WSL 2, however, makes use of live virtualized Linux kernel instances. It is possible to run some graphical (GUI) applications (such as Mozilla Firefox) by installing an X11 server within the Windows (host) environment (such as VcXsrv or Xming),[45] although not without caveats, such as the lack of audio support (though this can be remedied by installing PulseAudio in Windows in a similar manner to X11) or hardware acceleration (resulting in poor graphics performance). Support for OpenCL and CUDA is also not being implemented currently, although planned for future releases.[46][47] Microsoft stated WSL was designed for the development of applications, and not for desktop computers or production servers, recommending the use of virtual machines (Hyper-V), Kubernetes, and Azure for those purposes.[22]

In benchmarks, WSL 1's performance is often near native Linux Ubuntu, Debian, Intel Clear Linux or other Linux distributions. I/O is in some tests a bottleneck for WSL.[48][49][50] The redesigned WSL 2 backend is claimed by Microsoft to offer twenty-fold increases in speed on certain operations compared to that of WSL 1.[7] In June 2020, a benchmark with 173 tests on WSL 2 (20H2) with an AMD Ryzen Threadripper 3970X showed an average of 87% of the performance of native Ubuntu 20.04 LTS. In contrast, WSL 1 had only 70% of the performance of native Ubuntu. WSL 2 improves I/O performance, providing a near-native level.[51] A comparison of 69 tests with an Intel Core i9-10900K in May 2020 resulted in nearly the same relative performance.[52] In December 2020, a benchmark with 43 tests on WSL 2 (20H2) with an AMD Ryzen 9 5900X displayed an average of 93% of the performance of native 20.04.1 LTS, compared to WSL 1 which only achieved 73%.[53]

### WSL 2

[edit]

Synaptic package manager running on WSL

Version 2 introduces changes in the architecture. Microsoft has opted for virtualization through a highly optimized subset of Hyper-V features, in order to run the kernel and distributions (based upon the kernel), promising performance equivalent to WSL 1. For backward compatibility, developers do not need to change anything in their published distributions. WSL 2 settings can be tweaked by the WSL global configuration, contained in an INI file named `.wslconfig` in the User Profile folder.[54][55]

The distribution installation resides inside an ext4-formatted filesystem inside a virtual disk, and the host file system is transparently accessible through the 9P protocol,[56] similarly to other virtual machine technologies like QEMU.[57] For the users, Microsoft promised up to 20 times the read/write performance of WSL 1.[6] From Windows an IFS network redirector is provided for Linux guest file access using the UNC path prefix of `\\wsl$`.

WSL 2 requires Windows 11,[58] or Windows 10 version 1903 or higher, with Build 18362 or higher, for x64 systems, and Version 2004 or higher, with Build 19041 or higher, for ARM64 systems.[3]

WSL 2 on Windows 11 retains 95% of the performance of native Ubuntu 20.04 LTS.[59]

WSL 1 does not support IPv6 connections, whereas WSL 2 does.[60][61] IPv6 support in WSL 2 requires Windows 11 or newer.[62]

## See also

[edit]

* Linux portal

* Azure Sphere
* FreeBSD § OS compatibility layers
* SmartOS § Virtualization
* Windows Terminal
* Xenix

## References

[edit]

1. ^ "Release 2.2.4 · microsoft/WSL". GitHub. Retrieved 18 July 2024.
2. ^ "Release 2.1.3 · microsoft/WSL". GitHub. Retrieved 18 July 2024.
3. ^ a b pokhrel, bishal (27 December 2023). "Install WSL on Windows 10 or 11". Droid Crafts.
4. ^ Leeks, Stuart (2020). Windows Subsystem for Linux 2 (WSL 2) Tips, Tricks, and Techniques: Maximise Productivity of Your Windows 10 Development Machine with Custom Workflows and Configurations. Birmingham: Packt Publishing. pp. 18–19. ISBN 978-1-80056-352-0. OCLC 1202451000.
5. ^ June 2021, Darren Allan 23 (23 June 2021). "Windows 11 could seamlessly run graphical Linux apps". TechRadar. Retrieved 29 June 2021.`{{cite web}}`: CS1 maint: numeric names: authors list (link)
6. ^ a b c d Craig Loewen (6 May 2019). "Announcing WSL 2". Windows Command Line Tools For Developers.
7. ^ a b c mscraigloewen. "About WSL 2". docs.microsoft.com.
8. ^ "WSL 2 Post BUILD FAQ". Windows Command Line Tools For Developers. 14 May 2019.
9. ^ Bright, Peter (6 April 2016). "Why Microsoft needed to make Windows run Linux software". Ars Technica. Condé Nast.
10. ^ Aul, Gabe (6 April 2016). "Announcing Windows 10 Insider Preview Build 14316". Windows Experience Blog. Microsoft.
11. ^ "Windows Subsystem for Linux Overview". Windows Subsystem for Linux. Retrieved 22 April 2018.
12. ^ a b "What's new in WSL in Windows 10 Fall Creators Update - Windows Command Line". Windows Command Line. 11 October 2017. Retrieved 15 October 2021.
13. ^ Heath, Nick (20 September 2017). "Will Microsoft love Linux to death? Shuttleworth and Stallman on whether Windows 10 is free software's friend". TechRepublic. Archived from the original on 1 December 2022. Retrieved 18 February 2022.
14. ^ Microsoft Ignite (2 October 2018), OS internals: Technical deep-dive into operating system innovations - BRK3365, archived from the original on 9 November 2021, retrieved 7 May 2019
15. ^ "WSL 2 will be generally available in Windows 10, version 2004 - Windows Command Line". Windows Command Line. 13 March 2020. Retrieved 15 October 2021.
16. ^ "WSL 2 Support is coming to Windows 10 Versions 1903 and 1909 - Windows Command Line". Windows Command Line. 20 August 2020. Retrieved 15 October 2021.
17. ^ "GPU accelerated ML training inside the Windows Subsystem for Linux - Windows Developer Blog". Windows Blog. 17 June 2020. Retrieved 16 October 2021.
18. ^ a b "The Initial Preview of GUI app support is now available for the Windows Subsystem for Linux - Windows Command Line". Windows Command Line. 21 April 2021.
19. ^ Foley, Mary Jo (21 April 2021). "New Windows 10 test build adds first preview of Linux GUI apps on WSL". ZDNet. Retrieved 23 April 2021.
20. ^ a b Abrams, Lawrence (29 May 2021). "Hands on with WSLg: Running Linux GUI apps in Windows 10". Bleeping Computer. Retrieved 30 May 2021.
21. ^ "A preview of WSL in the Microsoft Store is now available! - Windows Command Line". Windows Command Line. 11 October 2021. Retrieved 16 October 2021.
22. ^ a b c d e "Frequently Asked Questions for WSL". Microsoft. Retrieved 13 November 2016.
23. ^ Harsh, Mike (30 March 2016). "Run Bash on Ubuntu on Windows". Building Apps for Windows. Microsoft.
24. ^ Finley, Klint (30 March 2016). "Why Microsoft Making Linux Apps Run on Windows Isn't Crazy". Wired. Condé Nast.
25. ^ Kirkland, Dustin (30 March 2016). "Ubuntu on Windows – The Ubuntu Userspace for Windows Developers". Ubuntu Insights. Canonical.
26. ^ Hammons, Jack (9 April 2016). "Bash on Ubuntu on Windows". MSDN. Microsoft.
27. ^ Get openSUSE Leap 42 - Microsoft Store
28. ^ Get SUSE Linux Enterprise Server 12 - Microsoft Store
29. ^ Yegulalp, Serdar (12 May 2017). "Windows Subsystem for Linux welcomes Suse and Fedora options". InfoWorld. Retrieved 16 September 2017.
30. ^ "Debian GNU/Linux for WSL now available in the Windows Store". Windows Command Line Tools For Developers. Retrieved 7 March 2018.
31. ^ "Kali Linux in the Windows App Store". Retrieved 9 March 2018.
32. ^ Manage and configure Windows Subsystem for Linux
33. ^ Windows Subsystem for Linux interoperability with Windows
34. ^ Command Reference for Windows Subsystem for Linux
35. ^ a b c Welcome to WSLg, Microsoft, 7 November 2021, retrieved 7 November 2021
36. ^ Salter, Jim (7 October 2021). "The best part of Windows 11 is a revamped Windows Subsystem for Linux". Ars Technica. Retrieved 7 November 2021.
37. ^ Viswav, Pradeep (11 October 2021). "Windows Subsystem for Linux (WSL) now available as an app from Microsoft Store on Windows 11". MSPoweruser. Retrieved 30 April 2024.
38. ^ "Installing WSLg". GitHub. 27 April 2022. Retrieved 27 April 2022.
39. ^ "Clarify Windows 10 vs 11 and build numbers (#485) · microsoft/wslg@5ddd8d2". GitHub. Retrieved 28 May 2022.
40. ^ Jack Hammons (22 April 2016). "Windows Subsystem for Linux Overview". Windows Subsystem for Linux blog on MSDN.
41. ^ Jack Hammons (15 June 2016). "WSL File System Support". Windows Subsystem for Linux blog on MSDN.
42. ^ Jack Hammons (8 November 2016). "WSL Networking". Windows Subsystem for Linux blog on MSDN.
43. ^ "Please enable WSL to run 32 bit ELF binaries". Windows Developer feedback (Microsoft/UserVoice). Archived from the original on 23 August 2019. Retrieved 21 January 2018.
44. ^ "Support for 32-bit i386 ELF binaries". GitHub.
45. ^ "Windows 10's Bash shell can run graphical Linux applications with this trick". PC World. Retrieved 10 September 2018.
46. ^ "GPU not accesssible [sic] for running tensorflow and installing CUDA · Issue #1788 · Microsoft/WSL". GitHub. Retrieved 10 September 2018.
47. ^ "OpenCL & CUDA GPU support". Windows Developer feedback (Microsoft/UserVoice). 15 September 2016. Archived from the original on 7 July 2018. Retrieved 10 September 2018.
48. ^ "Windows Subsystem for Linux". Phoronix.
49. ^ Larabel, Michael (12 October 2018). "A Look At The Windows 10 October 2018 Update Performance With WSL". Phoronix.
50. ^ Larabel, Michael (5 November 2018). "The WSL Improvements In The Windows 10 October 2018 Update". Phoronix.
51. ^ Larabel, Michael (24 June 2020). "Ubuntu 20.04 vs. Windows 10 WSL/WSL2 Performance In 170+ Benchmarks". Phoronix.
52. ^ Larabel, Michael (17 June 2020). "Windows 10 May 2020 Performance For WSL vs. WSL2". Phoronix.
53. ^ Larabel, Michael (16 December 2020). "Windows Subsystem For Linux / WSL2 Performance With The AMD Ryzen 9 5900X". Phoronix.
54. ^ Loewen, Craig (26 July 2019). "What's new for WSL in Insiders Preview Build 18945". Microsoft devblog. Archived from the original on 26 July 2019. Retrieved 26 July 2019. "In this new update we've added the ability to start using global config options for WSL. These options are targeted towards power users who want to further customize their WSL experience."
55. ^ Hillis, Ben (25 July 2019). "MicrosoftDocs/WSL | Build 18947". GitHub. Archived from the original on 26 July 2019. Retrieved 26 July 2019.
56. ^ "A Deep Dive Into How WSL Allows Windows to Access Linux Files". Windows Command Line Tools For Developers. 30 May 2019. Retrieved 24 June 2019.
57. ^ Jujjuri, Venkateswararao; Van Hensbergen, Eric; Liguori, Anthony; Pulavarty, Badari (13–16 July 2010). "VirtFS—A virtualization aware File System pass-through" (PDF). Linux Symposium.
58. ^ "Comparing WSL 1 and WSL 2". Microsoft Learn. 4 October 2022. Retrieved 18 October 2022.
59. ^ Larabel, Michael (29 September 2021). "Windows 11 WSL2 Performance is Quite Competitive Against Ubuntu 20.04 LTS / Ubuntu 21.10". Phoronix.
60. ^ craigloewen-msft (15 December 2023). "Comparing WSL Versions". learn.microsoft.com. Retrieved 16 December 2023.
61. ^ craigloewen-msft (31 July 2023). "Accessing network applications with WSL". learn.microsoft.com. Retrieved 11 October 2023.
62. ^ "wsl: Hyper-V firewall is not supported wsl: Mirrored networking mode is not supported, falling back to NAT networking · Issue #10495 · microsoft/WSL". GitHub. Retrieved 16 December 2023.

## Further reading

[edit]

* Barnes, Hayden (2021). Pro Windows Subsystem for Linux (WSL): Powerful Tools and Practices for Cross-Platform Development and Collaboration. Apress. ISBN 978-1484268728.
* Leeks, Stuart (2020). Windows Subsystem for Linux 2 (WSL 2) Tips, Tricks, and Techniques: Maximise productivity of your Windows 10 development machine with custom workflows and configurations. Packt Publishing. ISBN 978-1800562448.
* Singh, Prateek (2020). Learn Windows Subsystem for Linux: A Practical Guide for Developers and IT Professionals. Apress. ISBN 978-1484260371.

## External links

[edit]

Wikimedia Commons has media related to Windows Subsystem for Linux.

* WSL on Microsoft Learn
* WSL on GitHub
* WSL2-Linux-Kernel on GitHub
* Brown, Pete (22 July 2016). "Fun with the Windows Subsystem for Linux". Windows Developer Blog. Microsoft.

* v
* t
* e

Microsoft Windows components

* APIs
* Architecture
* 9x
* NT
* Booting process
* Games

Management
tools|

* App Installer
* Command Prompt
* Control Panel
* Device Manager
* Disk Cleanup
* Drive Optimizer
* Driver Verifier
* DirectX Diagnostic Tool
* Event Viewer
* IExpress
* Management Console
* Netsh
* Performance Monitor
* Recovery Console
* Resource Monitor
* Settings
* Sysprep
* System Configuration
* System File Checker
* System Information
* System Policy Editor
* System Restore
* Task Manager
* Windows Error Reporting
* Windows Ink
* Windows Installer
* PowerShell
* Windows Update
* Windows Insider
* WinRE
* WMI

Apps|

* 3D Viewer
* Calculator
* Calendar
* Camera
* Character Map
* Clipchamp
* Clock
* Cortana
* Edge
* Fax and Scan
* Feedback Hub
* Get Help
* Magnifier
* Mail
* Maps
* Messaging
* Media Player
* 2022
* Movies & TV
* Mobility Center
* Money
* Narrator
* Notepad
* OneDrive
* OneNote
* Paint
* Paint 3D
* People
* Phone Link
* Photos
* Quick Assist
* Remote Desktop Connection
* Snipping Tool
* Speech Recognition
* Skype
* Sports
* Start
* Sticky Notes
* Store
* Tips
* Voice Recorder
* Weather
* WordPad
* Xbox

Shell|

* Action Center
* Aero
* AutoPlay
* AutoRun
* ClearType
* Explorer
* Search
* Indexing Service
* IFilter
* Saved search
* Namespace
* Special folder
* Start menu
* Taskbar
* Task View
* Windows Spotlight
* Windows XP visual styles

Services|

* Service Control Manager
* BITS
* CLFS
* Multimedia Class Scheduler
* Shadow Copy
* Task Scheduler
* Error Reporting
* Wireless Zero Configuration

File systems|

* CDFS
* DFS
* exFAT
* IFS
* FAT
* NTFS
* Hard link
* links
* Mount Point
* Reparse point
* TxF
* EFS
* ReFS
* UDF

Server|

* Active Directory
* Domains
* DNS
* Group Policy
* Roaming user profiles
* Folder redirection
* Distributed Transaction Coordinator
* MSMQ
* Windows Media Services
* Active DRM Services
* IIS
* WSUS
* SharePoint
* Network Access Protection
* PWS
* DFS Replication
* Print Services for UNIX
* Remote Desktop Services
* Remote Differential Compression
* Remote Installation Services
* Windows Deployment Services
* System Resource Manager
* Hyper-V
* Server Core

Architecture|

* Boot Manager
* Console
* CSRSS
* Desktop Window Manager
* Portable Executable
* EXE
* DLL
* Enhanced Write Filter
* Graphics Device Interface
* Hardware Abstraction Layer
* I/O request packet
* Imaging Format
* Kernel Transaction Manager
* Library files
* Logical Disk Manager
* LSASS
* MinWin
* NTLDR
* Ntoskrnl.exe
* Object Manager
* Open XML Paper Specification
* Registry
* Resource Protection
* Security Account Manager
* Server Message Block
* Shadow Copy
* SMSS
* System Idle Process
* USER
* WHEA
* Winlogon
* WinUSB

Security|

* Security and Maintenance
* AppLocker
* BitLocker
* Credential Guard
* Data Execution Prevention
* Defender
* Family features
* Kernel Patch Protection
* Mandatory Integrity Control
* Protected Media Path
* User Account Control
* User Interface Privilege Isolation
* Windows Firewall

Compatibility|

* COMMAND.COM
* Windows Subsystem for Linux
* WoW64

API|

* Active Scripting
* WSH
* VBScript
* JScript
* COM
* ActiveX
* ActiveX Document
* COM Structured storage
* DCOM
* OLE
* OLE Automation
* Transaction Server
* DirectX
* Native
* .NET
* Universal Windows Platform
* WinAPI
* Windows Mixed Reality
* Windows Runtime
* WinUSB

Games|

* Solitaire Collection
* Surf

Discontinued|

| Games|

* 3D Pinball
* Chess Titans
* FreeCell
* Hearts
* InkBall
* Hold 'Em
* Purble Place
* Spider Solitaire
* Solitaire
* Tinker

|

Apps|

* ActiveMovie
* Anytime Upgrade
* Address Book
* Backup and Restore
* Cardfile
* CardSpace
* CD Player
* Chat
* Contacts
* Desktop Gadgets
* Diagnostics
* DriveSpace
* DVD Maker
* Easy Transfer
* Fax
* Food & Drink
* Groove Music
* Help and Support Center
* Health & Fitness
* HyperTerminal
* Imaging
* Internet Explorer
* Journal
* Make Compatible
* Media Center
* Meeting Space
* Messaging
* Messenger
* Mobile Device Center
* Movie Maker
* MSN Dial-up
* NetMeeting
* NTBackup
* Outlook Express
* Pay
* Phone Companion
* Photo Gallery
* Photo Viewer
* Program Manager
* Steps Recorder
* Syskey
* Travel
* WinHelp
* Write

Others|

* Desktop Cleanup Wizard
* Games for Windows
* ScanDisk
* File Protection
* Media Control Interface
* MS-DOS 7
* Next-Generation Secure Computing Base
* POSIX subsystem
* HPFS
* Interix
* Video for Windows
* Virtual DOS machine
* Windows on Windows
* Windows SideShow
* Windows Services for UNIX
* Windows System Assessment Tool
* Windows To Go
* WinFS

Spun off to
Microsoft Store|

* DVD Player
* File Manager
* Hover!
* Mahjong
* Minesweeper

* Category
* List

* v
* t
* e

Unix–Windows interoperability

Unix-like subsystems|

* Cygwin
* Microsoft POSIX subsystem
* Windows Services for UNIX (Interix)
* Windows Subsystem for Linux (WSL 1)

Development environments and shells|

* DJGPP
* Hamilton C shell
* MinGW (MSYS)
* Mingw-w64 (MSYS2)
* MKS Toolkit
* PowerShell
* UWIN

Ports of Unix-like utilities for Windows|

* GnuWin32
* UnxUtils

Windows runtime environments for *nix|

* Wabi
* Willows Toolkit for UNIX
* Wine (WINE@Etersoft, Cedega, CrossOver, Darwine, Proton)

Platform virtualization software|

* Cooperative Linux (TopologiLinux)
* Merge
* Windows Subsystem for Linux (WSL 2)

Related|

* APIW
* Captive NTFS
* NDISwrapper
* Windows Interface Source Environment
* DXVK

* v
* t
* e

Windows command-line programs and shell builtins

* COMMAND.COM
* Command Prompt
* Windows PowerShell
* Recovery Console

File system navigation|

* cd (chdir)
* dir
* popd
* pushd
* tree

File management|

* attrib
* cacls
* cipher
* compact
* copy
* del (erase)
* deltree
* icacls
* mkdir (md)
* mklink
* move
* openfiles
* recover
* ren (rename)
* replace
* rmdir (rd)
* robocopy
* takeown
* xcopy

Archiving|

* expand
* extrac32
* extract
* makecab
* pax
* tar

Disk management|

* chkdsk
* convert
* defrag
* diskcomp
* diskcopy
* diskpart
* diskraid
* diskshadow
* drvspace
* fdisk
* format
* fsutil
* label
* manage-bde
* refsutil
* subst
* scandisk
* sys
* vol
* vssadmin

Processes|

* at
* exit
* kill
* powercfg
* runas
* sc
* schtasks
* shutdown
* start
* taskkill
* tasklist

Registry|

* assoc
* ftype
* reg
* regini
* regsvr32

User environment|

* chcp
* cmdkey
* date
* graftabl
* mode
* path
* set
* setver
* setx
* time
* title
* ver
* where
* whoami

File contents|

* comp
* edit
* edlin
* fc
* find
* findstr
* print
* type

Scripting|

* choice
* clip
* cscript
* doskey
* echo
* for
* forfiles
* goto
* if
* more
* pause
* prompt
* rem
* timeout

Networking|

* arp
* bitsadmin
* curl
* getmac
* hostname
* ipconfig
* nbtstat
* net
* netsh
* netstat
* nslookup
* PathPing
* ping
* rpcping
* route
* scp
* setspn
* sftp
* ssh
* ssh-add
* ssh-agent
* ssh-keygen
* ssh-keyscan
* tracert
* winrm
* winrs

Maintenance and care|

* auditpol
* dispdiag
* driverquery
* eventcreate
* eventtriggers
* logman
* mofcomp
* msiexec
* ntbackup
* pnpunattend
* pnputil
* REAgentC
* relog
* sfc
* sxstrace
* systeminfo
* tracerpt
* typeperf
* w32tm
* WBAdmin
* wecutil
* wevtutil
* winmgmt
* winsat
* wmic

Boot management|

* bcdedit
* bootcfg
* bootsect
* fixboot
* fixmbr

Software development|

* debug
* exe2bin
* QBasic

Miscellaneous|

* break
* cls
* dism
* dpath
* gpresult
* gpupdate
* help
* MSCDEX
* pentnt
* tpmtool
* tpmvscmgr
* wsl

* List of DOS commands
* Environment variables
* Windows Support Tools

*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template