广告

微软会不会基于Linux内核重构Windows?

2020-10-15 综合报道 阅读:
最近,关于微软会不会基于Linux内核重构Windows的问题出现了两种完全不同的观点,开源软件爱好者 Eric S Raymond 认为微软应该重构,而有些人持反对观点,那么微软到底会不会基于Linux重构Windows呢?

最近,关于微软会不会基于Linux内核重构Windows的问题出现了两种完全不同的观点,开源软件爱好者 Eric S Raymond 认为微软应该重构,而有些人持反对观点,那么微软到底会不会基于Linux重构Windows呢?R1Oednc

几周前,开源软件爱好者 Eric S Raymond 提出的观点引发热议,他认为微软应该在 Linux 内核基础上重构 Windows。他认为目前个人电脑业务持续下滑,Windows 早已不再是微软的支柱业务,通过重构能够实现利润最大化。不过,曾参与 Windows Subsystem for Linux 的 Ubuntu 移植开发的 Hayden Barnes 对此持反对观点,认为微软不会基于 Linux 重构 Windows。R1Oednc

R1Oednc

Hayden Barnes 是游走在微软和 Linux 社区之间的知名开发者,曾帮助 Windows Subsystem for Linux(WSL)上推进 Ubuntu 开发工作。因此他能够和很多 Linux 开发人员、开源项目人员、社区成员和微软员工进行交流。而且,他还作为 MVP (微软最有价值专家)参与微软产品和策略的各种简报会。R1Oednc

对于近日流行的“微软应该迁移 Windows 系统核心至 Linux 内核”说法,他表示从产品和工程角度来说微软在任何情况下都不可能这么做。R1Oednc

R1Oednc

在说明具体原因之前,Barnes 认为在 Slashdot 和 Hacker News 上不断出现这个观点的原因:R1Oednc

● 能够吸引用户点击R1Oednc

● 对于开源和 Linux 倡导者来说,这是一个很早就存在的幻想。R1Oednc

● 目前,Windows 扮演的角色正在发生变化。尤其是当前 Android、iOS、macOS、Chrome OS 和 Ubuntu 都基于 Linux 的世界里R1Oednc

● 伴随着 Linux 在 Azure 和 WSL 的使用率增加,这种合理性正在不断增加。奥弗顿之窗(The Overton Window)已经转移。R1Oednc

对此,Barnes 认为微软不会基于 Linux 内核来重构 Windows 理由如下R1Oednc

1.内核R1Oednc

Windows 系统中的 NT 内核提供了一定程度的向后兼容、长期支持和驱动程序可用性,而 Linux 还在不断完善中。如果想要基于 Linux 重构,这必然需要耗费数百万美元。微软有很多付费客户可以继续按原样支持 Windows,某些已经有数十年了。R1Oednc

基于 Linux 重构 Windows,并不像 Raymond 所说的那样能够帮助微软节省开支。很多盈利公司的存在都是为现有的操作系统而服务的。即便是最终基于 Linux,也可能会导致不良的内核单一化。R1Oednc

Windows 和 macOS 的竞争,才能让 Linux 变成更好的操作系统。而更理想的结果是开源创新能够在所有操作系统之间传播,Windows 和 Linux 的开放源码贡献者能够共享两个生态系统的精华。R1Oednc

2.兼容性R1Oednc

目前尚不清楚如果 Windows 用户空间从 NT 迁移到 Linux 内核,是否能够保持良好的兼容性,特别是那些拥有关键任务应用、付费获取的东西。R1Oednc

Windows 没有像 Linux 那样严格区分内核空间和用户空间。NT 内核大约有 400 个已记录的 syscalls 以及大约 1700 个已记录的 Win32 API 调用。对于重新部署从而确保 Windows 开发者和他们工作达到预期的兼容性这是非常庞大的工作量,这完全超过了 Wine 提供的修正贡献。R1Oednc

Linux 在 arm64 上只有 313 个 syscalls,而另一个原因是微软已经从 WSL 1 中的 syscall 翻译层(translation layer)转换为 WSL 2 中的虚拟化内核,因此重新实现利用 Linux ABI  的数十种非标准方式是非常痛苦的事情。为微软拥有的 Linux 上的SQL Server 提供一个 NT 相关的兼容层是一回事,为其他数百万开发者的应用提供保证是另一回事。R1Oednc

3.微软投入巨大R1Oednc

近年来,微软在 Windows 上倾注的人力物力已经无法计算。微软在 Windows 10 的可用性、新功能、性能改进等多方面进行了优化投资,并取得了回报。在这些改进的基础上,通过和 OEM 厂商的合作,以及推出 Surface 品牌,已经帮助振兴了 PC 市场。R1Oednc

微软一直在努力使 Windows 成为一个优秀的开发平台,其项目包括 Windows Terminal、PowerToys、Windows Subsystem for Linux 和 Visual Studio 2019。Windows Insider 项目也非常成功。R1Oednc

目前,Windows 是包括 Surface 在内诸多产品的重要搭载系统,而这也是微软重点耕耘的一项业务。2018年和2020年的内部重组表明,现在 Surface 和 Windows 的未来是密不可分的。Windows 为 Xbox 提供了动力,我们正处于一个主要基于Windows的PC游戏的复苏期。R1Oednc

微软也有 Windows 10X 的想法,这是继 Windows 10 之后的下一个操作系统概念(我认为我们会逐步得到),未来的硬件如 Surface Neo 也在考虑之中。R1Oednc

4.没有必要R1Oednc

不需要基于 Linux 重构 Windows,微软也能保持相关性。在放弃移动市场之后,微软已经意识到了设备格局的变化。R1Oednc

微软认识到当前社会人类使用各种系统和各种平台,在系统上有 Android、Ubuntu、iOS、macOS、Chrome OS等等,而且除了 x86 之外还有 ARM。R1Oednc

微软已经表示他们能够适应这个多元的世界,在这些平台上推出了相关产品和服务,同时确保 Windows 在传统领域的竞争力。目前微软正基于 Android 和 iOS 推动移动领域的创新,不仅移植了微软 Office,而且还包括 Microsoft Launcher 在内的很多优秀应用,而且近期也推出了搭载 Android 系统的 Surface Duo 手机。R1Oednc

在 Ubuntu 系统上,微软推出了很多针对 Linux 工作站的工具,例如 Code, .NET, Azure tools, Teams, PowerShell, Sysinternals for Linux,以及即将到来的 Edge 浏览器。你想在Azure上运行Ubuntu吗?微软已经为你准备好了,并与Canonical紧密合作,让你获得美妙的体验。R1Oednc

与其关心微软是否基于 Linux 重构 Windows,更有趣的问题是微软在开源上能走多远?我们已经看到了 Windows Terminal, PowerToys 和其他 Windows 组件已经开源。而更合乎逻辑、符合实际的目标是,微软将会继续开放 Windows 组件和 Windows 开发过程,甚至于会超出 Windows Insider 项目范围,为其他系统提供福利。R1Oednc

结语:

其实,微软是否基于Linux内核重构Windows,这不仅仅是一个技术问题,也不仅仅是一个商业问题,更大的因素是一个观念的问题,如果微软要基于Linux内核重构Windows,势必要推翻其一直以来确立的“人设”,微软能否做到这种自我革新未知。并且,假如,能够实现自我革新,那么微软的盈利模式、收入结构是不是也将发生重大的改变?因为Linux授权盈利模式与现在的Windows完全不一样。R1Oednc

因此,加入需要做革新,这一切的改变都需要一个过程,至少在商业模式上要有一个逐渐转变的过程,以便平滑过渡。R1Oednc

本文为EDN电子技术设计 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
广告
热门推荐
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了