Windows for Linux 2.0即将发布
2020-05-18 11:50:00 Author: www.4hou.com(查看原文) 阅读量:324 收藏

WSL 2

Windows Subsystem for Linux允许用户在Windows 10系统中安装和运行Linux发行版。Windows Subsystem for Linux 2 (WSL2)即将在2020年5月发布的更新(Windows 10 2004)中发布,其中引入了一些新的特征和性能提升。

WSL version 1 (WSL1)使用了兼容Linux的 kernel,将Linux系统调用翻译使得其可以与window NT kernel进行通信。但这降低了其运行的性能,并使得其很难运行特定的Linux应用。在即将发布的Windows 10 version 2004版本中,微软测试了WSL的一些新特征,使用内置的Linux kernel和全部系统调用的兼容性来运行更多的Linux应用。

新变化

微软称,WSL 2中包含一个新的架构,修改了Linux二进制文件与Windows和硬件交互的方式。更新的WSL可以提供给用户与WSL 1一样的体验。

Real Linux kernel

Windows 10 version 2004中引入了一个真实的Linux kernel,使得系统全部的系统调用更加兼容。这也是首次,Linux kernel安装在Windows系统中。Kernel是基于kernel.org的开源代码的,并针对WSL 2做了大小和性能的优化。

微软称之后会通过Windows更新来更新Linux kernel,也就是说无需手动下载软件或工具来更新Linux的安全特征。微软称WSL 2使用了虚拟技术来在一个轻量级的虚拟机中运行Linux kernel,但是真实体验和传统虚拟机要好一些。WSL 2没有传统虚拟机的资源不足和性能问题。

WSL

新的虚拟化技术也可以让Windows和Linux更好的融合,启动速度也更快,无需用户进行虚拟机配置或管理。

WSL 2比WSL 1更快

在WSL 2中,用户会感受到git clone, npm install, apt update这种文件密集型的操作会更快。微软称,与WSL 1相比,WSL 2解压压缩文件的速率要快20倍;使用git clone, npm install, cmake的速度也提升了2-5倍。

在Windows 10 version 2004中,Linux二进制文件使用了系统调用执行函数,比如访问文件、请求内容、创建进程等。

有了Linux kernel的支持,WSL 2可以访问所有兼容的系统调用,使得更多的Linux 应用可以在容器中运行。

其他改进

WSL中还修复了一些安全问题:

· Unicode字符处理问题;

· wsl.exe中止而instance idle timers没有取消的问题;

· 检查了\\wsl$的大小写;

· 修复localhost relay [GH 4340];

· 更新Linux kernel 到4.19.81;

· 修改/dev/net/tun的默认权限为 0666 [GH 4629];

· 在启动进程前清除signal mask;

· 在symlink非交互时处理/etc/resolv.conf symlink的创建;

· 使用内存cgroup 来限制install和conversion操作的内存数量[GH 4669];

· 当Windows Subsystem for Linux可选组件未启动时,用wsl.exe来改善特征;

· 如果WSL可选组件未安装,修改wsl.exe未打印帮助文本;

· 修复创建实例时的竞争条件;

· 创建含有所有命令行功能的wslclient.dll;

· 在LxssManagerUser服务停止时防止奔溃;

· 修复当distroName参数为Null时,wslapi.dll失败的问题。

本文翻译自:https://www.bleepingcomputer.com/news/microsoft/whats-new-in-windows-subsystem-for-linux-20-coming-soon/如若转载,请注明原文地址


文章来源: https://www.4hou.com/posts/qDQR
如有侵权请联系:admin#unsafe.sh