2016年之前,Linux用户有个鲜明的标签:帽衫。他们看起来很开心,因为自由。微软看在眼里,嫉妒在心里,于是投入大量资源,在Windows内部打造了一个能运行Linux命令的虚拟环境——WSL 1。
最初的思路很直接:把Windows命令直接翻译成Linux指令。时间快进到当下,WSL已经迭代出两个版本。但当你通过WSL运行Linux命令时,底层究竟发生了什么?
打开网易新闻 查看精彩图片
WSL 1的核心是一套系统调用翻译层,把Linux的系统调用转换成Windows内核调用。有趣的是,这完全不需要虚拟机。唯一的问题是文件系统性能糟糕。但它证明了可行性。
WSL 2则换了一条路:在轻量级Hyper-V虚拟机里运行真正的Linux内核。Linux命令在这里无需翻译层,拥有完整的系统调用支持。更妙的是,它原生支持Docker容器。
从翻译层到真内核,微软用两代产品完成了一次技术路线的切换。表面看是兼容Linux,底层是对开发者自由的重新理解——毕竟,谁不想既穿帽衫,又不用换系统呢?
热门跟贴