谷歌醞釀神秘全新操作系統,搶占未來數字世界的交互入口?
作為世界上最大的互聯網公司之一,谷歌選擇歷來以優秀的軟件產品見長,除了各類應用類產品,其在操作系統上的開發也是不遺余力,最為典型的代表就是 移動端的 Android、PC 端的 Chrome OS,以及物聯網設備專用 Brillo。
Fuchsia 操作系統
或許是考慮到紛繁復雜的操作系統之間過于割裂、難以統一,亦或是搶占可穿戴設備、物聯網設備操作系統的新興市場,谷歌也在悄無聲息的開發一套嶄新的 “萬能”操作系統 Fuchsia。
這套操作系統最早于 2016 年夏天悄悄出現在 GitHub 的一個公開頁面上,相關介紹少之又少,鏈接指向的谷歌 Fuchsia 主頁也沒有太多關于這套全新操作系統的說明。
目前,我們只知道該系統仍正在開發中, 但 Fuchsia 的原代碼是完全公開的,任何人都可以下載到這一依舊保持神秘的操作系統。 可以說,Fuchsia 一出現就蒙上了一層神秘色彩。
下載地址:
https://fuchsia.googlesource.com/
同時,根據谷歌官方的描述,Fuchsia 的核心突破就在于其強大的適用性和可擴展性, 小到智能手機大到 ATM 機和臺式電腦,以及各種穿戴式設備和物聯網設備,都可以采用這一操作系統 。
那么問題就來了,在谷歌現有操作系統已經十分成熟的情況下,這一新的操作系統究竟意欲何為?是否代表谷歌將要拋棄掉已經取得的領先優勢?還是谷歌在下一盤很大的棋局?
在科技圈,谷歌旗下的兩款操作系統 Android 和 Chrome OS 之間的沖突 早就不是什么秘密了。以手機和平板作為主要安裝設備的 Android 目前已是世界上使用最多的操作系統,眾多開發者基于該操作系統而開發的應用軟件也是不計其數。
而為 PC 設計的 Chrome OS 則又是另一種情況,它以安全和簡潔的設計而聞名,在教育行業中被廣泛使用。
不過,即便如此,谷歌高管們還是否認了這兩款操作系統合并的可能性,只是在谷歌內部關于如何統一其軟件開發結構的討論從未停止過。而從用戶的角度來看,由于 Android 有比 Chrome OS 更加強大的功能和更多的 APP 選擇, 大部分人還是希望谷歌可以對 Android 進行 PC 化處理。
但顯然,谷歌找到了第三條道路: 開發一款全新的操作系統,就此看,Fuchsia 的出現也就順理成章了 。 這樣做不僅可以繼續推進谷歌的頂尖消費級操作系統的計劃,更重要的一點是修補在 Android 操作系統上曾犯下的諸多重要缺點。
升級之后,Fuchsia 將會擁有更安全的設計、更強大的性能、頻率更高的更新,以及一個對廣大開發者更友好的 API(應用程序編程接口)。
而作為一個操作系統最基礎、也是最核心的組成部分, 內核負責軟件對硬件的訪問,以及管理進程、內存、驅動程序以及支持文件系統等基礎功能 。通俗地說,它就是整個操作系統運行的基礎。
如果操作系統像一輛車,那內核就約等于發動機,它的性能和穩定性就是整個操作系統正常運行的關鍵。
今天的 Linux 是全球被最廣泛移植的操作系統內核。從平板電腦 iPad 到巨型電腦 IBM S/390,甚至于微軟出品的游戲機 XBOX 都可以看到 Linux 內核的蹤跡。Linux 也是 IBM 超級計算機 Blue Gene 的操作系統。
Linux 之所以強大,首先是它對于硬件的 強兼容性 ,幾乎所有的平臺都能跑 Linux,而不像 Windows NT 那樣過于傾心于 X86 平臺(雖然近些年也能在 ARM 上跑了)
其二在于其堅持的 開源 免費思想,造就了以 Lunix 社區為核心的全球開發模式,由創始人帶領的團隊負責內核的維護更新,而全球的開發者為其進行穩定性的 debug 使其穩定、強大、免費,自然受到了諸多青睞。
除 Android 以外,以往出現過的三星 Bada OS、Tizen OS,還有諾基亞曾經傾心的 Meego,也都是基于 Linux 內核。
而此次 Fuchsia 的微內核則被命名為 Magenta。Magenta 一詞的由來也是頗有深意,谷歌在 Magenta 的官方代碼庫中做出解釋:“Pink(粉色)+ Purple(紫色)= Fuchsia(紫紅色,即 Magenta)”。
Magenta 微內核代碼的截圖
而據 Fuchsia 團隊的描述,Purple 指的是 Project Purple(紫色項目),即 iPhone 最初的項目代號。而 Pink 則指的是 Taligent,即蘋果一個曾經試圖取代其經典 Mac 操作系統的失敗項目。兩者相加,可見谷歌跨平臺的愿景。
如果一旦成行,谷歌就勢必要放棄問題多多但又積淀多年的 Android,而這樣做其實會陷入一個兩難的處境,海量的 Android App 和全新的操作系統似乎并不可兼得。
上圖是 Fuchsia 在今年三月發布的新 Logo
但谷歌就是谷歌,它還是會竭盡全力以達成平衡,而這一手段很有可能就是 在 Hypervisor 上面運行虛擬的 Android App。
Hypervisor 是一種可以讓多個虛擬操作系統在一套硬件上作為虛擬機同時運行的軟件。雖然傳統虛擬機技術的效率低下,但近幾年來虛擬技術的發展提出了一種更優化的增效方式:以容器(container)的方式運行虛擬機。
容器是可以在同個操作系統內虛擬化單個 App 的獨立行程。通過只使用虛擬機中 App 所需的那部分,以容器方式運行虛擬機可以提供一個更高效、可靠以及安全的方式在同個操作系統(在這里指的就是 Fuchsia)內運行所有的 App。
也正因此,Fuchsia 可以輕松地支持 Android 所有現有的 App,為用戶提供一個無縫銜接的體驗。雖然 Android 有很大可能會繼續得到開發和支持,但在這種情況下,它將會成為 Fuchsia 內一個老舊的運行環境,勢必在幾年內被逐漸代替掉。
目前,Android 所依賴的 Linux 內核中另一重大缺陷就是 它缺少一個穩定的 ABI(應用二進制接口)。 而這個后果是十分嚴重的,作為應用程序和 CPU 之間的一個接口,ABI 處于軟件和硬件的中間位置,它驅動了所有的軟件程序,
對于提供 Android 系統驅動程序的芯片公司來說,由于沒有一個穩定的 ABI,每當谷歌推出新的 Android 版本,他們都必須更新其驅動程序,否則新版內核將會無法在他們的硬件上運行。但是,這顯然是一件費時費力的工作,很多公司都因此造成巨額虧損。
與之對立的是設備廠商需要的卻是搭有最新的驅動程序才能升級設備的操作系統。所以, 由于芯片商停止更新驅動導致設備商停止更新操作程序的多米諾效應意味著有數百萬臺 Android 設備將得不到任何及時的更新了 。Android 系統的批評者將這種現象稱作為“ 碎片化的噩夢 ”。
而這也將是 Fuchsia 試圖解決的問題之一。就像 Windows 操作系統一樣,Fuchsia 的內核將會提供一個穩定的 ABI。其擁有兩個內核:LK 和 Magenta。LK,即 Little Kernel,是一款用于嵌入式設備的現有操作系統。Magenta 則是建在 LK 上的一款微內核。
在谷歌的公開資料中,作為物聯網設備操作系統的 Fuchsia 將只會使用 LK。而在更復雜的設備,比如手機和電腦中,Fuchsia 則會使用 Magenta。
從消費者的角度來看,一款操作系統不只有內核,也該有為開發者準備的 API 以及為 API 開發的框架。但 Android 系統的創始人在早期往往出于特定需求,做出了許多關于 API 的技術決定,只是這些決定卻讓后來 Android 團隊和開發者的工作十分為難。
對于谷歌來說,Fuchsia 是一個難得的用一款更新、更好的操作系統來取代現有操作系統的機會。 其 API 大量借鑒了谷歌 Chrome 瀏覽器背后的開源項目 Chromium,而 Chromium 又是組成 Chrome OS 的重中之重。許多 Fuchsia 的低級 API 的代碼都是 Chromium 的 Mojo 系統 API 的修改版。而 Fuchsia 團隊也有許多來自于 Chromium 團隊的成員。
Chromium logo
而 Fuchsia 的用戶界面 Flutter 是使用谷歌 Dart 編程語言所開發。這么做也是考慮到讓為 Fuchsia 系統編寫 App 的開發者可以在做出極少改變的情況下就讓 App 在 Android 和蘋果 iOS 中運行。而這將有效的減少開發多平臺 App 時所需的工作量。
對于消費者來說, 谷歌的新款 Fuchsia 操作系統徹底遠離了 Android、Linux 以及 Unix 限制的設計,將會為他們提供一款性能更好、安全性更高以及支持期更長的操作系統。 在此之外,Fuchsia 在其他設備(比如二合一筆記本)中出現很有可能為他們提供超越傳統電腦操作系統的用戶體驗
雖然我們暫時不知道谷歌到底隱藏了 Fuchsia 的多少功能,但是 這個項目的潛力和野心不容小覷。