新版Win10能跑Linux:可Update 装驱动一样方便

在 Windows 上运行 Linux ? 这其实不是新鲜事,20年前,就有黑客这么干过。

不过大体都是虚拟机的做法,速度慢,能跑的 Linux 应用也少。

三十年河东,三十年河西。微软的开发者博客刚刚公布 [1] ,下一个 Windows10版本,不仅自带 Linux 内核,而且还会通过 Windows Update 安装方式更新,简单得就像安装驱动程序一样。

大杀器

这个大杀器叫做 WSL , 全称是“适用于 Linux 的 Windows 子系统”(Windows Subsystem for Linux),它其实也不是一夜间冒出来的,只是一直默默无闻。

最早它起源于一个叫 Astoria 的项目,目的是为了让一些安卓 APP 运行在 Windows 10移动版上。

但它的目标并不是硬件仿真或者虚拟化这样的项目,或者像流行的 Cygwin 这样的第三方 Linux 环境。

它的设计目标是一个完整的 Linux 子系统,可以直接使用主机的文件系统,比如允许用户在同一组文件上使用 Windows 应用程序和 Linux 工具;也可以调用硬件的某些部分,这是微软官方提供的在 Windows 环境下运行 Linux 软件的最直接方式。

比如直接使用 GNU Linux 的命令行工具,各种编程语言诸如 Python、Ruby 的解释器,甚至像 XWindow 这样的图形应用程序。

当然,微软指出 WSL 主要是面向应用程序的开发者,而不是日常的桌面环境。对于主力开发环境是 Windows ,但时不时需要用到 Linux 的开发者、老师或学生来说,堪称提高效率的开源神器。

下个月就可能发布

这个要推出的 Windows10版本号是2004,根据 YYMM 格式的命名规则,2004就是2020年4月,当然5月发布也不奇怪,Windows Insider 里则可以先行体验。

这次更新的其实是 WSL 第二个版本(WSL2) ,它比上一个版本 WSL1要强大得多,它打包了真正的 Linux 内核,推进到了普遍可用(GA,Generally Available)的状态。

特别是它大幅度提高了文件系统 I/O 性能,可以在 Windows 上直接运行 Linux 二进制文件。WSL1是通过转换层,对系统调用还要做翻译;而 WSL2则包含自己的 Linux内核,具有完整的系统调用兼容性,比如像 Linux 版本的 Docker 这样的开源程序,就可以直接调用。

WSL2是在2019年6月的 微软 Build 大会上宣布的,到这次即将要达到的人人可用的状态,花了接近一年的时间。

如何安装使用

这次 WSL2最值得称道的,就是它简便的安装和使用方式,说白了就像安装驱动程序或者打一个补丁那么简单。具体而言就是使用 Windows Update 进行更新,这样可以获得最新的内核版本,而无需更新整个 Windows 映像。

新版Win10能跑Linux:可Update 装驱动一样方便

如果是第一次安装 WSL ,就会在安装过程中检查更新并为您安装 Linux 内核。

当然,你也可以在命令行里操作,直接下载软件包。

新版Win10能跑Linux:可Update 装驱动一样方便

在 Github 上,你可以看到完整的源代码:WSL2-Linux-Kernel [2]。它基于 Linux 修改而来的,采取 Linux 内核的 GPLv2开源许可证协议。

新版Win10能跑Linux:可Update 装驱动一样方便

对于开发者来说,安装了 Linux 内核之后,不仅仅是使用 Linux 命令行工具,而是可以运行其上的 GNU/Linux,这意味着你可以选择不同的 Linux 发行版,比如 Ubuntu、Debian、SUSE 等等,这些发行版通过 Microsoft 商店就可以安装。

开源的微软,开源的社区

微软对开源的支持今非昔比了。随着 WSL 的发布,开发者已经形成了一个热烈的开源社区,甚至还办起了开发者大会 WSLCONF [3] ,今年的 WSLCONF 就是3月3日,当然由于疫情原因,变成了一次线上活动。

新版Win10能跑Linux:可Update 装驱动一样方便

开发者大会还是 Ubuntu 赞助的,围绕 WSL主题进行各个方面的讨论,其中社区的头号人物就是 WSL的微软项目经理克雷格·罗文(Craig Loewen)[4] 。

克雷格非常年轻,2018年刚从加拿大滑铁卢大学机电工程毕业,在校时实习经验丰富,不仅做过微软的实习生,还做过 FIRST 机器人大赛的评委。

作为微软官方的 WSL 项目经理,克雷格在微软开发者博客上也发布了他面对开发者的最新概述视频《在 WSL2上如何更快的开发程序》。

新版Win10能跑Linux:可Update 装驱动一样方便

(雷锋网注:上图为克雷格的演讲视频截图)

曾几何年,微软和 Linux 是操作系统领域最大的对手,为什么现在后者反而成了前者座上宾了?

Engadget 的评论认为,微软现在越来越不依赖于 Windows 的销售,而是更多依赖 Azure 这样的云服务。而在服务器端和开发者端,更多的支持 Linux,就是更好的打造生态。

新版Win10能跑Linux:可Update 装驱动一样方便


分享到:


相關文章: