Windows上的Bash正在成為微軟的Linux
微軟對(duì) Windows Subsystem for Linux(WSL)的一系列大量更新被列入 Windows Insider build 15002,該版本已于1月10日開始推送給 Windows 10 用戶。
微軟的 WSL 計(jì)劃仍然是具有較強(qiáng)的暫時(shí)性和實(shí)驗(yàn)性的,但該公司正在不斷往上添加功能,以飛快的步伐改進(jìn)和擴(kuò)展 WSL。 這在一定程度上也可以看出是種提示,微軟的目標(biāo)是使其成為其他 Linux 發(fā)行版的可靠替代品。
***版本的 WSL(在 Windows 中稱為 Bash )匯總了 Bash(一個(gè)流行的 Linux 命令行界面)的許多特定修復(fù)程序,致力于提供“你最喜歡的 Linux 工具和技術(shù)的更多兼容性、性能和穩(wěn)定性”。
其中的一些修復(fù)還實(shí)現(xiàn)了在 WSL 中的 Linux 應(yīng)用之前不可用的功能,例如支持內(nèi)核內(nèi)存過量使用和以前忽略的網(wǎng)絡(luò)堆棧選項(xiàng)。還有其他更改增強(qiáng)了 WSL 和 Windows 之間的集成。例如,如果啟用了 Windows 端審核,則在 WSL 中創(chuàng)建的任何 Linux 進(jìn)程的名稱都將記錄在審核日志中。
還有一些有趣的變化,涉及兩個(gè)操作系統(tǒng)之間的交互,比如日志功能。如果在 Windows 主機(jī)上有計(jì)量網(wǎng)絡(luò)連接,則***的 WSL 不會(huì)對(duì)包執(zhí)行計(jì)劃任務(wù)檢查,以避免高帶寬。
不過 build 15002 中的還有一個(gè)問題是,在 Bash 會(huì)話中的 Ctrl-C 無法工作。微軟提供了一個(gè)解決方向,說必須與 Windows 和 Bash 開發(fā)團(tuán)隊(duì)之間同步。下一個(gè) Insider build 應(yīng)該會(huì)有一個(gè)修復(fù)。但是對(duì)于重度使用 Linux 命令行進(jìn)行工作的人來說,沒有 Ctrl-C 有點(diǎn)像開車只有前制動(dòng)器。
guest 和 host OSes 在VM系統(tǒng)(如Hyper-V)中相互交互的方式為微軟提供了一個(gè)用于將來處理跨操作系統(tǒng)問題的模型。但是 WSL 不是托管在VM中 - 在某些方面,它更有野心:系統(tǒng)調(diào)用轉(zhuǎn)換層將每個(gè) Linux 系統(tǒng)調(diào)用映射到相應(yīng)的 Windows 系統(tǒng)調(diào)用。不過將 WSL 轉(zhuǎn)變?yōu)橐粋€(gè) Linux 用戶在 Windows 上的完整的生產(chǎn)環(huán)境還是很難 - 這畢竟是一個(gè)長遠(yuǎn)的目標(biāo)。
微軟有一天生產(chǎn)自己的 Linux 發(fā)行或購買一個(gè)然后重塑的說法已經(jīng)很久了,但是使用 WSL,微軟似乎正在從 Windows 本身萌發(fā) Linux 支持。
構(gòu)建 WSL 可能是一個(gè)比微軟自建 Linux 品牌要來得更快,而且收益更大的方式。 WSL 使用戶能夠在 Linux 命令行,Windows 桌面和 PowerShell 中同時(shí)使用。并且它為微軟提供了另一種方式來吸引和保留 Windows 用戶。