IT之家2月14日消息 外媒 9to5 Google 報道,多年來,谷歌一直在開發(fā) Fuchsia OS,這是一款明顯不基于 Linux 的操作系統(tǒng)。Fuchsia OS 操作系統(tǒng)的最新提案展示了這款 “不是 Linux”的操作系統(tǒng)如何能夠同時運(yùn)行 Android 和 Linux 的 “未修改”應(yīng)用程序。
打造一個新的操作系統(tǒng),尤其是像 Fuchsia 這樣從零開始的操作系統(tǒng),其中一個比較大的問題是——人們理所當(dāng)然地希望能夠在這個操作系統(tǒng)上運(yùn)行自己喜歡的應(yīng)用。在 Fuchsia 的情況中,理論上可以作為 Chrome OS 和 Android 的繼承者,人們很可能期望能夠同時運(yùn)行 Android 應(yīng)用和 Linux 應(yīng)用,以及原生的 Fuchsia 應(yīng)用。
到目前為止,人們期望 Fuchsia 能夠以 Chrome OS 目前能夠運(yùn)行 Linux 應(yīng)用的方式來實(shí)現(xiàn)這一點(diǎn),即在虛擬機(jī)中運(yùn)行完整的 Linux 實(shí)例。Chrome OS 甚至準(zhǔn)備使用同樣的策略來實(shí)現(xiàn)其運(yùn)行 Android 應(yīng)用的能力,這要?dú)w功于一個名為 arcvm 的項目。
然而,虛擬機(jī)的方案也有一些缺點(diǎn)。首先,在 “host”(例如 Fuchsia)和 “guest”(Android)之間管理文件可能是棘手或繁瑣的。此外,F(xiàn)uchsia 強(qiáng)調(diào)安全,試圖盡可能讓程序相互隔離。為了保持 Linux 應(yīng)用的這種隔離程度,F(xiàn)uchsia 需要運(yùn)行一個以上的虛擬機(jī),這可能會拖累性能。
IT之家獲悉,本周,有人提出了一個提案,為 Fuchsia 提供了替代解決方案,以計劃運(yùn)行 Linux 和 Android 的程序。Fuchsia 將獲得名為 “Starnix”的系統(tǒng),而不是運(yùn)行 Linux 本身,它將作為 Linux 內(nèi)核的指令和 Fuchsia 的 Zircon 內(nèi)核指令之間的翻譯器。
本質(zhì)上,Linux 程序?qū)?“正常”運(yùn)行,不會區(qū)分出它不是在基于 Linux 的操作系統(tǒng)中運(yùn)行的事實(shí)。同時,Starnix 需要做的工作是確保應(yīng)用程序能夠在 Fuchsia 上運(yùn)行,就像它在 Linux 上正常運(yùn)行的那樣。如果你對 Linux 的工作方式非常熟悉,Starnix 的完整提案是一個有趣的內(nèi)容,特別是他們支持 Linux“as she is spoke”的計劃。
對于那些對 Fuchsia 有偶然興趣的用戶來說,更有趣的是開發(fā)者打算如何使用 Starnix。在多個場合,提案中都提到了使用 Starnix 直接在 Fuchsia 上運(yùn)行 Android 的代碼。
“隨著我們擴(kuò)大希望在 Fuchsia 上運(yùn)行軟件的范圍,我們遇到了希望在 Fuchsia 上運(yùn)行的軟件,但我們沒有能力重新編譯。例如,Android 應(yīng)用程序包含已經(jīng)為 Linux 編譯的本地代碼模塊。為了在 Fuchsia 上運(yùn)行這些軟件,我們需要能夠在不修改它們的情況下運(yùn)行二進(jìn)制文件。
例如,我們將運(yùn)行一些來自 Android 源碼樹的低級測試二進(jìn)制文件,以及來自 Linux 測試項目的二進(jìn)制文件?!?/p>
從中我們可以看出,谷歌可能是打算讓 Fuchsia 能夠深度支持 Android 應(yīng)用,不需要例外,比如對于使用 Android NDK 用 C 或 C++ 編寫的應(yīng)用。當(dāng)然,從長遠(yuǎn)來看,Starnix 應(yīng)該只是作為一種權(quán)宜之計,讓谷歌的 Fuchsia 操作系統(tǒng)能夠更廣泛地使用,同時等待開發(fā)者將他們的應(yīng)用移植到新的操作系統(tǒng)中。幾乎在所有情況下,原生的 Fuchsia 應(yīng)用都應(yīng)該比通過 Starnix 運(yùn)行的 Linux 或 Android 應(yīng)用表現(xiàn)更好。
也就是說,F(xiàn)uchsia 的 Starnix 只是在提案階段,需要做大量的工作才能有類似于適當(dāng)?shù)?Android/Linux 到 Fuchsia/Zircon 的兼容性。為了盡量避免這種工作缺陷,谷歌一直在研究類似項目的成功和失敗,比如最初的微軟 Windows Subsystem for Linux(WSL1)。不過,這項提議還需要經(jīng)過審視,F(xiàn)uchsia 重新使用虛擬機(jī)來滿足其 Linux 和 Android 需求的可能性還是很大的。
Fuchsia 增加 Linux 和 Android 的兼容性支持聽起來很吸引人,谷歌最近已經(jīng)開放了這個項目,接受開源社區(qū)的貢獻(xiàn)。
廣告聲明:文內(nèi)含有的對外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。