linuxsir首页 LinuxSir.Org | Linux、BSD、Solaris、Unix | 开源传万世,因有我参与欢迎您!
网站首页 | 设为首页 | 加入收藏
您所在的位置:主页 > Linux基础建设 >

Build 2019上微软的开源动作有点不一样

时间:2019-05-14  来源:未知  作者:admin666

微软今年举办的 Build 开发者大会可谓是抢足风头,大会第一天就放了不少大招:宣布新的命令行终端 Windows Terminal、Windows 10 的 Linux 子系统 WSL 2 将运行真正的 Linux 内核、跳过 .NET 4 宣布 .NET 5 的计划、宣布 Web 版本的 VS Code(Visual Studio Online)。

这种积极拥抱开源的态度对微软而言不是什么新鲜事,毕竟他们家的两个重量级项目 —— Visual Studio Code 和 .NET runtime 早已开源,并按照规范的开源、社区驱动的方式来运作。

但微软这次在 Build 2019 上的开源举动有点不一样。

我们都知道,微软在 Windows 10 一周年更新的版本中引入了名为 Windows Subsystem for Linux(WSL) 的 Linux 子系统,不过 WSL 只是 Linux 兼容层,而非真正的 Linux 内核,它是由微软自己开发的内核组件,提供了与 Linux 内核相同的 API,本质上是将 Linux API 翻译到 Windows NT kernel API。

由于 WSL 使用的是自研的内核组件,所以它天生就有不少缺陷,例如无法使用 Linux 驱动(尤其是文件系统驱动),这使得它的文件系统性能只有真正内核的二十分之一。另外,WSL 提供的 API 集也比较陈旧,甚至部分 API 都没有实现,还有的 API 即便实现了也只是部分实现。

这里有人可能会问,反正 Linux 内核是开源的,既然微软自己做得不好,为什么不直接把现成的拿过来用呢?微软当然不傻,之所以选择自研正是为了避免使用 Linux 内核的代码,因为 Linux 内核使用的 GPLv2 许可证具有“传染性”,这可能会迫使微软开源 WSL,甚至 Windows 系统的部分代码。虽然微软爱开源,但也怕爱过了头。

所以刚被公布的 2 代 WSL 才会显得有点不一样。微软表示 WSL 2 会在轻量级的虚拟机里运行真正的 Linux 内核。通过运行完整的内核,WSL 2 不仅大幅度提升了文件系统性能,也提供了完整的系统调用兼容性。

更重要的是,WSL 2 这次不再“畏惧” Linux 内核所采用的 GPLv2 许可证,因为微软宣布它将根据许可证要求完全开源 WSL 2 的内核补丁和修改。

基于 GPL 许可证的项目构成了 Windows 系统的一部分,这意味着它骨子里已经拥有开源的“基因”,身上某处流淌的是开源的“血液”。

除了运行真正 Linux 内核的 WSL 2,新发布的命令行终端 Windows Terminal 也是这次大会上的那个“不一样”。

?¢????Windows Terminal?¢?????§?????¥?????§?????|?????§?′?¢?§?????|????

相信很多人都知道 Windows 的命令行工具(cmd.exe)依赖于一个名为 conhost.exe 的程序,它在系统中被称为“控制台窗口主机”,是命令行程序的宿主进程。

conhost.exe 实现了 Windows 命令行工具的基础架构,同时提供 Windows Console API、输入引擎、渲染引擎和用户配置信息,在系统中是一个十分重要且核心的程序。

作为 Windows Terminal 项目的一部分,微软采用 MIT 许可证将 conhost.exe 一同开源出去。这绝对称得上是史无前例的操作,虽然微软此前也曾将 Windows 系统里面的项目进行开源,但都是一些不太重要的工具,如计算器,或是其他已不再更新的程序。

这次将 conhost.exe 开源,不但是微软首次开源核心的 Windows 系统代码,更重要的是,如果 Windows Terminal 稳定后并被集成到 Windows 系统中,那么它将是首个以开源方式进行开发的 Windows 核心组件。

上面的两个“不一样”可以让我们深刻感受到微软的转变,从它对待开源的态度,对开源的贡献,不难看出微软把开源看得十分重要 —— 不再仅仅是将一个个独立的项目开源,而是将开源融入到 Windows 系统乃至微软的方方面面,并且能够持续发展。

一直以来,大家都不认为、更不相信微软会开源 Windows 系统,但按现在的趋势,有生之年见证微软开源 Windows 系统也不是没可能的事,你觉得呢?

友情链接
  • WSL Arch Linux已正式登陆Microsoft Store应用商店
  • GNU调试器 GDB 8.3 发布及安装更新,支持RISC
  • OpenMandriva Lx 4.0将Python 2排除在其基本操作系统之外
  • Linux 5.1.1 发布,几个修复
  • Wine
  • Android Studio 3.5 Beta 发布,性能优化改进
  • Firefox和GNOME最终可以在Linux 5.2的AFS文件系统上运行
  • DifferentialEquations.jl v6.4.0 发布,用于微分方程高性能求解
  • RHEL 8发布后,用户等待CentOS 8的推出
  • Libinput 1.13.2 发布,为苹果TouchPad提供更好的手指检测功能
  • GTK 3.96 发布,作为向GTK 4.0迈进的又一步
  • Phoronix Test Suite v8.8.0m3 发布,开源基准测试
  • CentOS 8.0作为Red Hat Enterprise Linux 8.0社区版重新构建的进
  • GNOME 3.32.2桌面环境发布,最新的bug和安全修复
  • LWJGL 3.2.2 发布,针对Vulkan 1.1和其他新包的更新
  • Mesa 19.0.4 发布,许多RADV, RadeonSI和Intel修复
  • Krita 4.2 Alpha带来性能改进,其他数字绘画增强功能
  • 英特尔为BFloat16添加GCC 10和LLVM Clang 9编译器支持
  • ZFS On Linux 0.8
  • 适用于Ubuntu手机的Ubuntu Touch OTA
  • Kaidan作为Jabber/XMPP聊天客户端加入KDE
  • Google在Chrome中发布新的Cookie控件,改善用户隐私
  • 微软开源PowerToys,计划推出Windows 10版本
  • Linux内核将很快默认情况启用“
  • 由于证书问题,Mozilla延迟Firefox 67推出
  • Radeon ROCm 2.4 发布,兼容TensorFlow 2.0
  • Wine 4.8采用Unicode 12.0更新,更好地支持操纵杆
  • Google宣布Kotlin为Android应用程序开发的首选语言
  • 面向Windows 10的Chromium Microsoft Edge Beta泄露
  • KDE Plasma 5.16推出重写的通知系统
  • 币安交易所被黑客入侵,超过7000比特币被盗
  • Vivaldi 2.5 发布,世界上第一个与Razer Chroma集成的Web浏览器
  • Debian 10 “Buster” 目前在GNOME默认使用Wayland,但仍有可能
  • Linux 5.2中的XFS获得“大量新东西”
  • Firefox 66.0.5发布,包含针对扩展Bug的更多修复
  • Unity 2019.2 Beta 发布,带来许多Linux和Vulkan补丁
  • qBittorrent 4.1.6发布! 如何在Ubuntu 18.04中安装它
  • Linux新闻 第971页
  • MongoDB 日志切割三种方式
  • MongoDB Oplog深入理解
  • MongoDB 副本集搭建与管理详解
  • MongoDB 备份与还原 mongodump、mongorestore
  • MongoDB 常用的几大GUI工具
  • 微软开源Xamarin API Docs
  • Chrome浏览器将不再允许网站劫持后退按钮
  • 福彩3d试机号查询
  • 彩票平台
  • 福彩3d开奖直播
  • 凤凰时时彩平台网址
  • 温岭六家统记牌器