1. 概述

1.1 什么是适用于 Linux 的 Windows 子系统

适用于 Linux 的 Windows 子系统可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生虚拟机开销。

您可以:

在 Microsoft Store 中选择你偏好的 GNU/Linux 分发版。
运行常用的命令行软件工具(例如 grep、sed、awk)或其他 ELF-64 二进制文件。
运行 Bash shell 脚本和 GNU/Linux 命令行应用程序,包括:
工具:vim、emacs、tmux *语言:NodeJS、Javascript、Python、Ruby、C/ C++、C# 与 F#、Rust、Go 等 *服务:SSHD、MySQL、Apache、lighttpd、MongoDB、PostgreSQL。
使用自己的 GNU/Linux 分发包管理器安装其他软件。
使用类似于 Unix 的命令行 shell 调用 Windows 应用程序。
在 Windows 上调用 GNU/Linux 应用程序。

1.2 什么是 WSL 2?

WSL 2 是适用于 Linux 的 Windows 子系统体系结构的一个新版本,它支持适用于 Linux 的 Windows 子系统在 Windows 上运行 ELF64 Linux 二进制文件。 它的主要目标是提高文件系统性能,以及添加完全的系统调用兼容性。

这一新的体系结构改变了这些 Linux 二进制文件与Windows 和计算机硬件进行交互的方式,但仍然提供与 WSL 1(当前广泛可用的版本)中相同的用户体验。

单个 Linux 分发版可以在 WSL 1 或 WSL 2 体系结构中运行。 每个分发版可随时升级或降级,并且你可以并行运行 WSL 1 和 WSL 2 分发版。 WSL 2 使用全新的体系结构,该体系结构受益于运行真正的 Linux 内核。

1.3 WSL 2 中的新增功能

SL 2 是 WSL 中体系结构的新版本,它更改了 Linux 分发版与 Windows 进行交互的方式。 WSL 2 的主要目标是提高文件系统性能并增加完全的系统调用兼容性。 每个 Linux 分发版都可以作为 WSL 1 或 WSL 2 运行,并可随时在它们之间进行切换。 WSL 2 是对基础体系结构的一次重大改造,它使用虚拟化技术和 Linux 内核来实现其新功能。

只有 Windows 10 版本 2004 的内部版本 19041 或更高版本中才提供 WSL 2。

1.4 比较 WSL 2 和 WSL 1

适用于 Linux 的 Windows 子系统更新到新版本的主要目标是,提高文件系统性能并支持完全的系统调用兼容性。

WSL 2 使用最新、最强大的虚拟化技术在轻量级实用工具虚拟机 (VM) 中运行 Linux 内核。 但是,WSL 2 不是传统的 VM 体验。 了解有关 WSL 2 体系结构的详细信息。