Google 跨裝置作業系統Fuchsia或將支援 Java,Android將何去何從?

Editor發表於2018-11-18

今年年初,市場調查公司 Gartner 釋出了一份調查報告,報告結果顯示當前的移動操作市場中,Android 的市場佔比為 85.9%,iOS 系統的佔比為 14%,而兩者合計佔據市場高達 99.9% 的份額。反觀其他移動作業系統累計僅有 0.1% 的佔比,毫無疑問,這意味著其他小眾的作業系統在當前的大環境之下,幾乎沒有生存空間。


Android,是一個基於Linux核心的開放原始碼移動作業系統,由Google成立的Open Handset Alliance持續領導與開發,主要設計用於觸屏移動裝置如智慧手機和平板電腦與其他行動式裝置。



Google 跨裝置作業系統Fuchsia或將支援 Java,Android將何去何從?


同時,從此前落敗的 BlackBerry OS、Symbian OS 以及 Windows Phone 等系統來看,是否真的很難再出現第三大移動作業系統了?


事實上,不好判斷。為什麼這麼說?


一方面,全球第一大移動作業系統 Android 於今年遇到了有史以來最大的麻煩,即被歐盟認定其存在壟斷市場、排擠競爭對手等行為,Google 為此不得不改變 Android 作業系統的許可政策。


另一方面,就 Android 作業系統本身而言,其系統碎片化問題日趨嚴重,且並未隨著 Google 釋出 Project Treble 專案而有明顯的改善,最終導致不少開發者棄坑而逃。


最後,自 2016 年起,就有不少媒體透露 Google 正在祕密研發全新的作業系統——Fuchsia,而這款系統的終極目的就是取代 Android 系統,不過,對於這款神祕的作業系統,Google 對外宣佈的細節並不多,但近日據外媒 9To5Google 報導,借道 Android,Fuchsia 或將支援 Java 了!


整體看來,說尚未落地的 Fuchsia 將取代 Android 還為時尚早,但是根據接連不斷的訊息也不難推測出,Google 似乎正在培養繼 Android 之後的二號產品,也大有第三大作業系統之勢。


Google 跨裝置作業系統Fuchsia或將支援 Java,Android將何去何從?


1.融合了 Android 和 Chrome OS 的跨裝置作業系統——Fuchsia


2016 年 8 月,全球知名的開發者社群 GitHub 上悄然上出現了一名為Fuchsia的專案(https://github.com/fuchsia-mirror)。


而點開其詳情,該專案可直接連結到Google的Git原始碼庫,就此,Fuchsia才得以曝光。據瞭解,Fuchsia 作業系統並不是像 Android 和 Chrome OS 一樣使用 Linux 核心,而是使用一種名為“Magenta”的核心,Magenta 構建於“Little Kernel”(LK)之上,主要使用 C 和 C++ 語言編寫,這是一個專為嵌入式裝置設計的小型核心,也是 FreeRTOS 或 ThreadX 等實時作業系統的競爭對手,不過,2017 年,“Magenta”被重新命名為“Zircon”。


Google 跨裝置作業系統Fuchsia或將支援 Java,Android將何去何從?


Zircon是為Fuchsia OS提供動力的核心平臺。 Zircon由微核心(核心中的原始碼)和一小組使用者空間服務,驅動程式和庫(系統中的原始碼/ ...)組成,系統啟動,與硬體通訊,載入使用者空間流程並執行它......在此基礎之上,Fuchsia構建了一個更大的作業系統。


之所以在新系統中放棄 Linux 核心,是因為如今的 Liunx 核心包含了 1500 萬行程式碼,其中許多程式碼都不是 Google 作業系統所必需的。且如此多的程式碼行也代表了一個巨大的攻擊面,儘管 Linux 發行版通常被認為比 Windows 和 macOS 更安全。


新作業系統 Fuchsia 的核心 Zircon 雖然是在 LK(Little Kernel)基礎上建立,但是和 LK 有很大的不同。諸多,LK 是專門為具有少量 RAM 的裝置而設計,而Zircon 主要針對具有更多 RAM 和更高處理能力的智慧手機及 PC 等裝置。Zircon 還支援系統程式,而 LK 則不支援。但是,Zircon 程式由 LK 級構造(如執行緒和記憶體)組成。


Linux是一種自由和開放原始碼的類UNIX作業系統。該作業系統的核心由林納斯·託瓦茲在1991年10月5日首次釋出。,在加上使用者空間的應用程式之後,成為Linux作業系統。Linux也是自由軟體和開放原始碼軟體發展中最著名的例子。


與 LK 相比,Zircon 還具有一流的使用者模式支援,是一個物件處理系統,並具有基於功能的安全模型。安全性應類似於 Android 的許可權模型。但是,它可能更嚴格,因為新架構是從頭開始建立的,並考慮到“最小特權”安全模型。據瞭解,Fuchsia 作業系統將支援 32 位和 64 位 ARM 裝置(包括 Raspberry Pi 3)以及 AMD64 架構。


Google 跨裝置作業系統Fuchsia或將支援 Java,Android將何去何從?


此外,Fuchsia 系統最大的優勢是可以作為一款融合 Android 和 Chrome OS 的跨裝置作業系統出現,即根據硬體的不同,將作業系統分成兩個單獨的使用者介面。


據 9to5Google 報導,Fuchsia 由兩個截然不同但相互關聯的使用者介面(UI)組成,一個以手機為中心,代號為"Armadillo"的 UI(也被認為是 Fuchsia 的系統 UI),另一個是傳統的桌面 UI,內部代號稱為"Capybara"。而該介面和系統的應用程式是用 Google 的 Flutter SDK 編寫的,這個專案可以提供跨平臺即 Android 和 iOS 上執行的程式碼。而 Flutter App 使用的是 Dart 語言編寫。



2.Fuchsia 或將支援 Java!


同時,外媒 9to5Google 在最新的報導中還表示,在 Android 的 Gerrit 原始碼管理中,有人發現 Google 的提交記錄,該提交記錄顯示,Google 一直在私下處理 Fuchsia 與 Android 的 Libcore 的相容性,他們現在正在將其公之於眾。


Google 跨裝置作業系統Fuchsia或將支援 Java,Android將何去何從?


而 Libcore 正是 Android 使用 Java 的基礎。其中值得注意的是,Libcore 中大部分新增了對 Fuchsia 的相容性,其被稱之為'ojluni',分別代表 OpenJDK Lang、Util、Net、IO。這些是使用開源 OpenJDK 實現 Java 的四個基礎部分。至少,這表明 Fuchsia 最終將會執行 Java 程式碼。


除此之外,提交記錄本身並沒有透露任何其他有趣的細節,它只是調整了部分需要為 Fuchsia 和 Zircon 工作的程式碼而並非針對 Linux 和 Android 做的改變。不過,在 Fuchsia 的程式碼中目前也沒有相匹配的更改來表明其確切目的。


簡單推測一下,這是今年早些時候將 Android Runtime 引入 Fuchsia 的後續工作。另一方面,這可能是 Google 想在最新的作業系統上執行 Java 而做的努力。



3. 為什麼 Google 需要新的作業系統?


寫到了這裡,或許很多人還是很不解,難道僅是因為 Android 被判壟斷,Google 就要放棄世界第一大作業系統這個香餑餑?事實上,Google 弱化 Android 這個品牌也絕非一天兩天,此前 CSDN 也總結了 Google 對於 Android 的種種動作,併發出《Google 要放棄 Android 了?》的疑問,對此,有網友@xg15 表示道:


Google 目前正在維護三個不同的作業系統:Android,Chrome 作業系統和現在的 Fuchsia——過去就有很多訊息謠傳他們可能會將它們統一起來。所以我的猜測是他們要麼不再強調 Android,想要弱化之前作業系統碎片洩漏的事件影響,要麼他們真的計劃在某些時候放棄 Android 技術基礎。


而即使是弱化 Android,那為何 Google 甚至也要棄 Linux 核心去使用新的核心?


對此,外媒 Tomshardware 分析其中主要原因,一共有三:



從頭開始


曾經的移動網際網路已在潛移默化中向萬物互聯時代過渡,Google 希望建立一個包羅永珍的作業系統,而這個系統需要足夠纖薄,足以安全地處理從物聯網裝置到個人電腦的任何事情。簡而言之,可以把它想象成 Android(用於物聯網的移動作業系統)和 Windows(用於移動和物聯網的桌面作業系統)的更薄版本。


過去很長的一段時間內,Google 早已在構建作業系統方面積累了豐富的專業知識和專業知識,現在旨在利用所有這些知識去建立一個不受過去錯誤和遺留程式碼困擾的新作業系統。這是一個全新的開始,也可以從開發現代作業系統的所有最新研究中受益。



拉開與 Java 的間隔,控制程式語言


第二點,今年 3 月,Google 和 Oracle 糾纏長達八年的“Java 侵權案”最終有了結果,令 Google 懊惱的是,美國聯邦巡迴法院判其向 Oracle 賠償 88 億美元,其中主要緣由 Oracle 認為 Android 抄襲了 Java 專案的部分。


不過即使沒有訴訟,Google 也沒有蘋果公司(Objective-C 和 Swift)和微軟(C#)的語言開發自由。所以,開發新一代作業系統 Fuchsia 也是 Google 可以選擇更好控制的程式語言機會。


之前,Google 已經建立了兩種語言,Go 和 Dart。現在看來,Google 似乎選擇 Dart 作為 Fuchsia 的主要應用程式開發語言,且他們可能最終希望所有 Android 開發人員轉而使用 Dart 開發應用程式。



減輕如同老系統 Android 帶來的碎片化問題


開源的 Android 不像閉源的 iOS 系統那般容易管理,Android 的更新模式對 Google 而言尤其令人頭痛,Google 修復 Android 漏洞的速度幾乎無關緊要,因為手機制造商和運營商可以自行推出系統更新,這樣是常說的 Android 碎片化問題。


Chrome OS 已經逃脫了這一更新的噩夢,因為雖然它背後的核心程式碼是開源(Chromium OS),但商用的 Chrome OS 本身只能由 Google 修改。這使得 Google 可以完全控制更新週期。



4. Fuchsia 的未來


截止目前,Google 對於其新一代作業系統 Fuchsia 的態度可謂非常的低調。那麼對於這樣的一個專案,贏面究竟有多大?


此前,Google 的 Android 工程副總裁 Dave Burke 對 Fuchsia 系統做出過解釋稱,Fuchsia 是一個早期的實驗專案,而在 Google 內部有很多這種實驗專案,由於是早期專案,因此其還存在很大的變數。


確實如此,就國內而言,至今仍未有一款真正的國產移動作業系統來與 Android 和 iOS 相抗衡,除了人才稀缺、財力消耗巨大等因素之外,重要的是系統生態問題。即使 Google 在 Fuchsia 上研發成功,倘若不能將 Android 上超過 10 億的使用者、開發商以及製造商平穩的過渡,那麼最終結局可能只會如微軟的 Windows Phone 一樣,失敗而終。




- End -


來源:

  • CSDN



更多資訊:



相關文章