歡迎光臨
每天分享高質量文章

微軟全都要!Win10引入真Linux內核

繼將 Bash shell、原生 OpenSSH、WSL 引入 Windows,以及在微軟商店提供 Ubuntu、SUSE Linux 和 Fedora 等發行版,正在舉辦的 Microsoft Build 2019 大會上,微軟又宣佈了一個重大的決定 —— 將完整的 Linux 內核引入 Windows 10。

 

按照微軟的說法,到時 Windows 10 將包含內置的完整定製版 Linux 內核,為最新的 WSL 提供更好的支持。

 

 

微軟在 5 月 6 日推出了全新的終端 Windows Terminal,這是一個全新的、流行的、功能強大的命令列終端工具。包含很多來社區呼聲很高的特性,例如:多 Tab 支持、富文本、多語言支持、可配置、主題和樣式,支持 emoji 和基於 GPU 運算的文本渲染等等。

同時該終端依然符合我們的標的和要求,以確保它保持快速、高效,並且不會消耗大量記憶體和電源。

而在這之上,其實是 2 代 WSL(Windows Subsystem for Linux 2)提供了強勁動力

WSL 團隊在博客中寫到:

今天我們推出 Windows Subsystem for Linux 的最新架構:WSL 2!這種新架構的變化將允許:大幅度的檔案系統性能提升,以及完整的系統呼叫兼容性,這意味著可以在 WSL 2 中運行更多 Linux 應用程式,例如 Docker。

WSL 1 雖然已經於 2016 年就推出,但是社區一直要求提高檔案系統性能,並具有更好的系統呼叫兼容性,使更多應用程式可以在 WSL 內部工作。

新推出的 WSL 2 使用一個全新的體系結構,使用真正的 Linux 內核,可以在 Windows 上運行 ELF64 Linux 二進制檔案,新的架構改變了這些 Linux 二進制檔案與 Windows 和計算機硬體的交互方式,但仍提供與 WSL 1 相同的用戶體驗。

單個 Linux 發行版既可以作為 WSL 1 發行版運行,也可以作為 WSL 2 發行版運行,可以隨時升級或降級,並且可以並行運行 WSL 1 和 WSL 2 發行版。

Linux 二進制檔案使用系統呼叫來執行許多功能,例如訪問檔案、請求記憶體與創建行程等。WSL 1 創建了一個轉換層,對這些系統呼叫進行翻譯,以允許它們在 Windows NT 內核上工作。

但是,實現所有這些系統呼叫很有挑戰性,導致某些應用程式無法在 WSL 1 中運行。現在 WSL 2 包含自己的 Linux 內核,它具有完整的系統呼叫兼容性。這引入了一組可以在 WSL 中運行的全新應用程式。

值得一提的例子是 Linux 版本的 Docker 可以在 WSL 2 中運行,當然了,還有前面提到的全新終端 Windows Terminal。同時,使用 WSL 2 意味著可以比 WSL 1 更快地獲得 Linux 內核的最新改進,因為開發團隊可以簡單地更新 WSL 2 內核而不需要自己重新實現更改。

毋庸置疑,WSL 2 的速度也明顯比 1 代快git clone、npm install、apt update 與 apt upgrade 等檔案密集型操作都會明顯加快。實際的速度增加將取決於正在運行的應用程式以及它與檔案系統的交互方式。

開發團隊運行的初始測試使 WSL 2 在解壓 tarball 時比 WSL 1 快 20 倍,在各種專案中使用 git clone、npm install 和 cmake 時速度提高約 2-5 倍

WSL 2 的初始版本將於今年 6 月底通過 Windows 內部人員計劃提供。值得一提的是,用於 WSL 2 的內核也將會完全開源。

詳情請查看「閱讀原文」

赞(0)

分享創造快樂