recientemente Microsoft引入了更新的WSL2子系统 (适用于Linux的Windows子系统),旨在在Windows上运行Linux可执行文件。
关键功能 第二版 提供Linux内核,而不是中间层 即时将Linux系统调用转换为Windows系统调用。
WSL2的试用版将于XNUMX月底提供 在Windows Insider的实验版本中。
同样,在有关Microsoft终端仿真器“ Windows Terminal”的帖子中,其代码在MIT许可下分发。
为与WSL进行内核集成而准备的所有更改将根据免费的GPLv2许可证发布,并将在上游提供。
关于WSL 2
Windows终端 提供基于选项卡的界面和共享窗口,完全支持Unicode和转义序列进行颜色输出,允许更改主题和插件, 支持虚拟控制台(PTY) 并使用DirectWrite / DirectX加快文本渲染速度。
基于仿真器的WSL1支持将被保存,用户可以将其与WSL2一起使用。 为了在Windows环境中运行Linux内核,已经使用了轻量级虚拟机,该虚拟机已在Azure中使用。
作为的一部分 Windows 2的WSL10,Linux内核4.19将提供一个组件。 随着发布LTS 4.19的修复程序,将通过Windows更新机制快速更新WSL2的内核,并在Microsoft Continuous Integration Infrastructure上进行测试。
WSL2将使用与Azure基础结构相同的核心,这将简化维护。
准备的补丁程序包括优化措施,以减少内核启动时间,减少内存消耗,并在内核中保留最少的驱动程序和子系统。
拟议的内核将能够作为WSL1中提供的仿真层的透明替代品。 拥有源代码将使发烧友愿意的话,可以为WSL2构建他们的Linux内核构建,为此将准备必要的说明。
关于WSL2中的更改
使用核心 优化 Azure项目将使您实现完全的Linux兼容性 在系统调用级别,并确保Docker容器可以在Windows上平稳运行,并基于FUSE机制实现对文件系统的支持。
另外, WSL2大大提高了I / O性能 和文件系统操作,这曾经是WSL1的瓶颈。
例如,解压缩WSL2归档文件时,WSL1的速度是WSL20的1倍,而执行“ git clone”,“ npm install”,“ apt update”和“ apt upgrade”的操作是2到5倍。
实际速度增加将取决于应用 您正在运行的文件以及它如何与文件系统交互。
尽管像以前一样提供了Linux内核,WSL2仍不会为用户空间提供一组现成的组件。
这些组件是单独安装的,并且基于各种发行版。 例如,对于在Microsoft商店目录中进行WSL安装,建议使用Ubuntu,Debian,Kali Linux,SUSE和openSUSE程序集。
为了与Windows中提供的Linux内核进行交互,将需要替换一个小的初始化脚本,该脚本会更改发行版中的启动过程。 Canonical已经宣布打算完全支持Ubuntu在WSL2上的工作。
在终端上,您可以使用命令提示符(cmd),PowerShell和WSL。 在夏季,Windows用户可以通过Microsoft Store目录使用新终端。
最后,微软团队告诉我们,他们将在其博客以及Twitter帐户上宣布启动。
成为第一个发表评论