微軟不會將Windows遷移至Linux

這裏的重點甚至不在 Windows 或者 Linux,而是我們該先選擇 Hyper-V 還是 KVM。解決了這個問題,Windows 與 Ubuntu 棧都能通過些許調整在對方之上順暢運行。

最近的一連串事件,不由得令人懷疑微軟是不是打算在 Linux 內核之上對 Windows 加以重構。

我個人對於微軟積極參與 Linux 項目倒是有一點自己的見解。作爲 Canonical 桌面團隊的一員,我負責在 Windows Subsystem for Linux(WSL)上交付 Ubuntu。當時,我經常跟衆多參與 Linux 及其他開源項目的微軟員工交流,也能拿到關於微軟產品及發展策略的最新簡報。但這裏要向大家聲明,以下內容只是我的個人猜想,且不會公開任何不宜發佈的內容。

我很高興能夠在微軟與 Linux 社區之間找到自己的位置。兩個社區都不乏極富創造力、善良且極具個人魅力的成員。隨着社區間邊界的逐漸模糊,無數新的成果也接踵而至。這有點像是自然界中的異花授粉,會讓每個植株都變得更富活力。

默認情況下,WSL 不會進行無人值守升級,因爲其中沒有 systemd 這樣的傳統 init 在後臺執行升級。你可以在 Windows 任務管理器中設置基本任務,在登錄時以 root 用戶身份運行 apt update,而後向任務中添加運行 apt upgrade 的操作:

使用 Windows 任務管理器在 WSL 的 Ubuntu 上運行自動更新

我對微軟出於產品及工程方面的考慮,而有可能將 Windows 操作系統內核轉移至 Linux 內核的觀點深表懷疑。下面請大家聽聽我的想法。

首先,我這樣理解 Slashdot 與 Hacker News 近期經常發佈此類觀點的原因:

  1. 典型的標題黨行爲。
  2. 對於開源及 Linux 倡導者們來說,這是他們一直期盼的結局。
  3. 當今世界上,Windows 所扮演的角色正在發生變化。在這塊巨大的系統市場蛋糕中,Android、iOS、MacOS、Chrome OS 以及 Ubuntu 牢牢把持着自己的一塊。

隨着在 Azure 與 WSL 上使用 Linux 成爲可能,這種猜測的合理性開始增加。

Windows 與 Linux 的存在代表着宇宙的雙重性。這是兩股相互對立、但又彼此補充的力量,缺一不可。而將二者融合起來,則像是一種神奇的魔法。“在與 Windows 及 MacOS 的競爭過程中,Linux 逐漸成長爲優秀的操作系統。”

而我認爲 Windows 不大可能改用 Linux 內核的理由如下:

  1. Windows 中的 NT 內核能夠提供一定程度的向下兼容性、長期支持與驅動程序可用性,而這一切都是 Linux 最近才正在努力的方向。在 Linux 中重現這些能力需要耗資數百萬美元。微軟的很多付費客戶也將在未來繼續支持 Windows 系統。正如微軟方面所言,Windows 並不是他們的負擔,因此並不存在爲了節約開支而轉向 Linux 內核的情況。另外,即使真的轉向 Linux,也有可能在單一內核的背景之下導致畸形文化。事實上,正是在與 Windows 及 MacOS 的競爭過程中,Linux 逐漸成長爲優秀的操作系統。更合理的結果應該是,開源創新繼續在所有操作系統之間往來傳播。Windows 與 Linux 開源貢獻者將共享這兩大生態系統中的精華。

  2. 目前尚不清楚 Windows 用戶空間能否從 NT 重新遷移至 Linux 內核,同時繼續保持 Windows 強大的兼容性,特別是企業級客戶以付費方式獲得的關鍵任務應用程序兼容性。Windows 在內核空間與用戶空間方面並沒有像 Linux 那樣做出嚴格劃分。NT 內核中大約包含 400 項明確記錄的 syscalls,外加約 1700 項明確記錄的 Win32 API 調用。要在這一背景之下保證 Windows 開發者及其工具擁有精確的兼容性,必然涉及大量重新實現工作。Linux 在 amd64 上則只有 313 項 syscalls,但即使是這樣,微軟在將 WSL 1 中 syscall 事務層轉向 WSL 2 中虛擬內核以重新實現開發者此前已經在使用的數十種非標準 Linux ABI 操作方法時,也遇到了巨大的阻力。很明顯,在 Linux 上的 SQL Server 中實現 NT 相關兼容性相對容易,但爲數百萬開發人員的應用程序提供兼容性保證則絕對不是嘴上說說這麼簡單。

  3. 微軟近年來在 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 等未來硬件平臺。

  4. 微軟無需使用 Linux 內核,也同樣能夠在市場上擁有旺盛的生命力。在移動市場上遭遇滑鐵盧後,微軟意識到設備的格局正在發生變化。在操作系統與平臺市場上,包括 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 瀏覽器與配套微軟 Web 開發工具。想在 Azure 上運行 Ubuntu?微軟已經提供現成服務,並與 Canonical 緊密合作以帶來更出色的使用體驗。

更重要的問題,並不是微軟是否打算將 Windows 遷移至 Linux,而是 Windows 打算在開源道路上走多遠。我們已經見證了 Windows Terminal、PowerToys 等組件要麼開始使用開源成果,要麼正籌劃轉向開源。因此更現實也更合乎邏輯的目標,應該是以能夠使其他操作系統受益的方式持續開放 Windows 組件乃至 Windows 本體的開發過程。在這輪轉型中,Insiders 計劃還僅僅只是第一步。

Windows 甚至採取了 Ubuntu 的版本發佈節奏,開始在每年 4 月和 10 月發佈新版本,同時在固定發行版中引入擴展支持。

微軟發佈的一篇博文與我的個人判斷相互印證,即桌面操作系統的對抗時代即將結束。我們正在邁進一個新時代,屆時高端工作站將同時運行多種操作系統(類似於運行時)。因此這裏的重點甚至不在 Windows 或者 Linux,而是我們該先選擇 Hyper-V 還是 KVM。解決了這個問題,Windows 與 Ubuntu 棧都能通過些許調整在對方之上順暢運行。微軟爲 Linux 內核提供補丁程序,保證 Linux 能夠在 Hyper-V 上正常運作;同時也調整了 Windows,使其與 KVM 良好對接。

由於整個微軟都在趨於開源,因此 Ubuntu 的一部分將進入 Windows,而 Windows 的一部分則將進入 Linux。

其中最關鍵的背景,在於開源已經成爲軟件世界中的王,而微軟也爲自己在開源開發模式中的貢獻感到無比自豪。

Windows 與 Ubuntu 都只有一條道路可走———通過開源不斷完善自身。雙方都將發揮自己的相對優勢,並將開源協作的範圍提升到新的高度。

在 WSL 上爲 GUI 支持所做的工作有可能極大地改善 Linux 上的遠程桌面和 Windows 虛擬化體驗。

原文鏈接

No, Microsoft is not rebasing Windows to Linux

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章