微软今天释出了 Windows 10 build 18917 Insider 版本,其中最引人关注的是核心采用 Linux 重构的 WSL 2(Windows Subsystem for Linux)现在已经可用。

WSL 2 是上个月微软在 Build 2019 上宣布推出的,相比第一代,新的 WSL 重新设计了架构,使用真正的 Linux 核心,可以在 Windows 上执行 ELF64 Linux 二进位制档案。
Linux 二进位制档案使用系统呼叫来执行许多功能,例如访问档案、请求内存与建立程序等。WSL 1 建立了一个转换层,对这些系统呼叫进行翻译,以允许它们在 Windows NT 核心上工作。但是,实现所有这些系统呼叫很有挑战性,导致某些应用程序无法在 WSL 1 中执行。
现在 WSL 2 包含自己的 Linux 核心,它具有完整的系统呼叫相容性,这引入了一组可以在 WSL 中执行的全新应用程序,比如 Linux 版本的 Docker。
微软在部落格中介绍了 WSL 2 的使用方式,其中指出了 WSL 1 与 2 两点最大的不同:
将 Linux 档案放在 Linux 根档案系统中
过去三年,WSL 1 的档案一直需要放在 C 盘,WSL 2 的新架构已经没有了这个问题,现在可以将 Linux 应用中经常访问的档案放在 Linux 根档案系统中,以享受档案效能优势,这样会带来更快的档案系统访问能力。
同时 Windows 应用现在也可以直接访问 Linux 根档案系统,比如档案资源管理器。可以在 bash shell 中执行`explorer.exe /` 测试一下效果。
在初始构建中使用动态 IP 地址访问 Linux 网络应用
WSL 2 包含使用虚拟化技术的巨大架构变更,网络支援仍在改进中。
WSL 2 现在在虚拟机器中执行,因此需要使用该 VM 的 IP 地址从 Windows 访问 Linux 网络应用;同样的,需要 Windows 主机的 IP 地址才能从 Linux 访问 Windows 网络应用。微软的目标是尽可能让 WSL 2 能够使用 localhost 访问网络应用。
新 WSL 命令
新的 WSL 还添加了一些命令来帮助使用者控制和检视 WSL 版本和相关资讯。
wsl --set-version :切换 WSL 2 与 WSL 1
wsl --set-default-version :更改预设 WSL 版本
wsl --shutdown:立即终止所有正在执行的发行版和 WSL 2 VM
wsl --list --quiet:列出发行版名称
wsl --list --verbose:显示发行版的详细资讯
开源中国征稿啦!
开源中国 www.oschina.net 是目前备受关注、具有强大影响力的开源技术社群,拥有超过 400 万的开源技术精英。我们传播开源的理念,推广开源专案,为 IT 开发者提供一个发现、使用、并交流开源技术的平台。
现在我们开始对外征稿啦!如果你有优秀的技术文章想要分享,热点的行业资讯需要报道等等,欢迎联络开源中国进行投稿。投稿详情及联络方式请参见:我要投稿
I❤MS↓↓↓





























