首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Canonical成员:微软不会将 Windows 迁移到 Linux

近日,Canonical 桌面团队成员 Hayden Barnes 发表个人观点称,他认为微软不会将 Windows 迁移到 Linux。

近段时间以来,微软积极融合 Linux 的举措引发了外界诸多猜想,许多人开始怀疑微软是否有在 Linux 内核之上对 Windows 加以重构的想法。其中,开源先驱、《大教堂与集市》作者 Eric S Raymond 就在个人博客上提出观点称:微软将放弃 Windows 系统的内核研发,转而将其建立在 Linux 内核之上。

对于以上观点,Hayden Barnes 则持一个否定态度。Hayden Barnes 是 Canonical 桌面团队的一员,负责在 Windows Subsystem for Linux(WSL)上交付 Ubuntu。他表示,自己经常和众多参与 Linux 及其他开源项目的微软员工进行交谈,也能拿到关于微软产品及发展策略的最新简报。不过他也声明,文中所有猜想只属于个人观点。

Hayden Barnes 称,默认情况下,WSL 不会进行无人值守升级,因为其中没有 systemd 这样的传统 init 在后台执行升级。用户可以在 Windows 任务管理器中设置基本任务,在登录时以 root 用户身份运行 apt update,而后向任务中添加运行 apt upgrade 的操作。

Hayden Barnes 列举了他认为 Windows 不会改用 Linux 内核的原因,具体有四点:

Windows 中的 NT 内核提供了一定程度的向后兼容性、长期支持和驱动程序可用性,而 Linux 最近才开始发力这个方面。在 Linux 中复制这些将花费数百万美元。微软有大量的付费客户可以继续支持 Windows 的现状,有些客户甚至可以支持几十年。正如微软方面所言,Windows 并不是微软的负担,因此并不存在为了节约开支而转向 Linux 内核的情况。且很多盈利的公司仅仅是为了服务现有的操作系统而存在。即使是要重新编译到 Linux,也有可能在单一内核的背景之下导致畸形文化。与 Windows 和 macOS 的竞争使得 Linux 成为更好的操作系统。更理想的结果是,开源创新继续在所有操作系统之间传播。Windows 和 Linux 的开源贡献者共享两个生态系统的精华。

尚不清楚 Windows 用户空间是否可以从 NT 重新迁移到 Linux 内核,并保持 Windows 强大的兼容性,特别是企业级客户以付费方式获得的关键任务应用程序兼容性。Windows 没有像 Linux 那样严格划分内核空间和用户空间。NT 内核有大约 400 个记录的 syscalls 加上大约 1700 个记录的 Win32 API 调用。要在这一前提下保证 Windows 开发者及其工具拥有精确的兼容性,将是一个巨大的重新实现量。这不仅仅是为 Wine 贡献一些修正。Linux 在 amd64 上只有 313 个 syscall,尽管如此, 微软在将 WSL 1 中 syscall 事务层转向 WSL 2 中虚拟内核以重新实现开发者此前已经在使用的数十种非标准 Linux ABI 操作方法时,也遭遇了巨大的阻力。很明显,为微软拥有的 Linux 上的 SQL Server 提供 NT 相关的兼容层是一回事,为其他数以百万计的开发者的应用提供保证则是另一回事。

近年来,微软在 Windows 上投入了诸多资源。微软在 Windows 10 的可用性、新功能和性能改进方面进行的投资也取得了回报。这些改进、与 OEM 厂商的合作以及 Surface 的推出,再次振兴了一度遭受 iPad 与 Chromebook 双重冲击的 PC 市场。微软一直在努力使 Windows 成为一个优秀的开发平台,相关项目包括 Windows Terminal、PowerToys、Windows Subsystem for Linux 和 Visual Studio 2019;Insiders 计划也非常成功。Windows 为大多数 Surface 设备产品线提供了支持,这是微软目前的工作重点。2018 年与 2020 年的内部重组表明,Surface 和 Windows 的未来发展已经密不可分。Windows 也在为 Xbox 提供支持,同时继续掌控着庞大的 PC 游戏市场。微软还提出了 Windows 10X 的构想,并表示 10X 将成为 Windows 10 之后的下一代操作系统概念,有望匹配 Surface Neo 等未来硬件平台。

微软没有必要为了保持相关性而重新选择 Linux。微软意识到,在移动领域输给 Windows 之后,设备格局正在发生变化。在操作系统与平台市场上,包括 Android、Ubuntu、iOS、MacOS、Alexa、Chrome OS 正在为 x86 乃至 ARM 等多种计算设备提供底层支持。微软已经证明他们完全有能力在其他平台上提供相关产品和服务,同时保持 Windows 传统平台的竞争力。微软现在正在推动 Android 在移动领域的创新,不仅有移植的 Office 应用,还有主屏幕启动器,以及现在的 Surface Duo。在 Ubuntu 上,他们提供了对 Linux 工作站有意义的工具,如 Code、.NET、Azure 工具、Teams、PowerShell、Sysinternals for Linux,以及即将推出的 Edge,它带有微软定制的网络开发工具。你想在 Azure 上运行 Ubuntu 吗?微软已经提供现成服务,并与 Canonical 紧密合作以带来更出色的使用体验。

另一方面,Hayden Barnes 指出,其实重要的并不是微软是否打算将 Windows 迁移至 Linux,而是 Windows 打算在开源道路上走多远。大家已经见证了 Windows Terminal、PowerToys 等组件要么已经开始使用开源成果,要么正筹划转向开源。

因此更现实也更合理的目标,应该是以能够使其他操作系统受益的方式持续开放 Windows 组件乃至 Windows 本体的开发过程,甚至超出 Insiders 计划的范围。毕竟 Windows 已经采取了 Ubuntu 的版本发布节奏,开始在每年 4 月和 10 月发布新版本,同时在固定发行版中引入扩展支持。

文章部分素材源自:OSC开源社区

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20201019A03X6Z00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券