今年年初,市場調(diào)查公司Gartner發(fā)布了一份調(diào)查報告,報告結(jié)果顯示當(dāng)前的移動操作市場中,Android的市場占比為 85.9%,iOS系統(tǒng)的占比為14%,而兩者合計占據(jù)市場高達(dá)99.9%的份額。反觀其他移動操作系統(tǒng)累計僅有0.1%的占比,毫無疑問,這意味著其他小眾的操作系統(tǒng)在當(dāng)前的大環(huán)境之下,幾乎沒有生存空間。
同時,從此前落敗的BlackBerry OS、Symbian OS以及 Windows Phone等系統(tǒng)來看,是否真的很難再出現(xiàn)第三大移動操作系統(tǒng)了?
事實上,不好判斷。為什么這么說?
一方面,全球第一大移動操作系統(tǒng) Android 于今年遇到了有史以來最大的麻煩,即被歐盟認(rèn)定其存在壟斷市場、排擠競爭對手等行為,Google 為此不得不改變 Android 操作系統(tǒng)的許可政策;另一方面,就 Android 操作系統(tǒng)本身而言,其系統(tǒng)碎片化問題日趨嚴(yán)重,且并未隨著 Google 發(fā)布 Project Treble 項目而有明顯的改善,最終導(dǎo)致不少開發(fā)者棄坑而逃;最后,自 2016 年起,就有不少媒體透露 Google 正在秘密研發(fā)全新的操作系統(tǒng)——Fuchsia,而這款系統(tǒng)的終極目的就是取代 Android 系統(tǒng),不過,對于這款神秘的操作系統(tǒng),Google 對外宣布的細(xì)節(jié)并不多,但近日據(jù)外媒 9To5Google 報道,借道 Android,F(xiàn)uchsia 或?qū)⒅С?Java 了!
整體看來,說尚未落地的 Fuchsia 將取代 Android 還為時尚早,但是根據(jù)接連不斷的消息也不難推測出,Google 似乎正在培養(yǎng)繼 Android 之后的二號產(chǎn)品,也大有第三大操作系統(tǒng)之勢。
一、融合了 Android 和 Chrome OS 的跨設(shè)備操作系統(tǒng)——Fuchsia
2016 年 8 月,全球知名的開發(fā)者社區(qū) GitHub 上悄然上出現(xiàn)了一名為 Fuchsia 的項目,而點開其詳情,該項目可直接鏈接到 Google 的 Git 源碼庫,就此,F(xiàn)uchsia 才得以曝光。
據(jù)了解,F(xiàn)uchsia 操作系統(tǒng)并不是像 Android 和 Chrome OS 一樣使用 Linux 內(nèi)核,而是使用一種名為“Magenta”的內(nèi)核,Magenta 構(gòu)建于“Little Kernel”(LK)之上,主要使用 C 和 C++ 語言編寫,這是一個專為嵌入式設(shè)備設(shè)計的小型內(nèi)核,也是 FreeRTOS 或 ThreadX 等實時操作系統(tǒng)的競爭對手,不過,2017 年,“Magenta”被重新命名為“Zircon”。
之所以在新系統(tǒng)中放棄 Linux 內(nèi)核,是因為如今的 Liunx 內(nèi)核包含了 1500 萬行代碼,其中許多代碼都不是 Google 操作系統(tǒng)所必需的。且如此多的代碼行也代表了一個巨大的攻擊面,盡管 Linux 發(fā)行版通常被認(rèn)為比 Windows 和 macOS 更安全。
新操作系統(tǒng) Fuchsia 的內(nèi)核 Zircon 雖然是在 LK(Little Kernel)基礎(chǔ)上建立,但是和 LK 有很大的不同。諸多,LK 是專門為具有少量 RAM 的設(shè)備而設(shè)計,而 Zircon 主要針對具有更多 RAM 和更高處理能力的智能手機(jī)及 PC 等設(shè)備。Zircon 還支持系統(tǒng)進(jìn)程,而 LK 則不支持。但是,Zircon 進(jìn)程由 LK 級構(gòu)造(如線程和內(nèi)存)組成。
與 LK 相比,Zircon 還具有一流的用戶模式支持,是一個對象處理系統(tǒng),并具有基于功能的安全模型。安全性應(yīng)類似于 Android 的權(quán)限模型。但是,它可能更嚴(yán)格,因為新架構(gòu)是從頭開始創(chuàng)建的,并考慮到“最小特權(quán)”安全模型。據(jù)了解,F(xiàn)uchsia 操作系統(tǒng)將支持 32 位和 64 位 ARM 設(shè)備(包括 Raspberry Pi 3)以及 AMD64 架構(gòu)。
此外,F(xiàn)uchsia 系統(tǒng)最大的優(yōu)勢是可以作為一款融合 Android 和 Chrome OS 的跨設(shè)備操作系統(tǒng)出現(xiàn),即根據(jù)硬件的不同,將操作系統(tǒng)分成兩個單獨的用戶界面。
據(jù) 9to5Google 報道,F(xiàn)uchsia 由兩個截然不同但相互關(guān)聯(lián)的用戶界面(UI)組成,一個以手機(jī)為中心,代號為"Armadillo"的 UI(也被認(rèn)為是 Fuchsia 的系統(tǒng) UI),另一個是傳統(tǒng)的桌面 UI,內(nèi)部代號稱為"Capybara"。而該界面和系統(tǒng)的應(yīng)用程序是用 Google 的 Flutter SDK 編寫的,這個項目可以提供跨平臺即 Android 和 iOS 上運(yùn)行的代碼。而 Flutter App 使用的是 Dart 語言編寫。
二、Fuchsia 或?qū)⒅С?Java!
同時,外媒 9to5Google 在最新的報道中還表示,在 Android 的 Gerrit 源代碼管理中,有人發(fā)現(xiàn) Google 的提交記錄,該提交記錄顯示,Google 一直在私下處理 Fuchsia 與 Android 的 Libcore 的兼容性,他們現(xiàn)在正在將其公之于眾。
而 Libcore 正是 Android 使用 Java 的基礎(chǔ)。其中值得注意的是,Libcore 中大部分添加了對 Fuchsia 的兼容性,其被稱之為'ojluni',分別代表 OpenJDK Lang、Util、Net、IO。這些是使用開源 OpenJDK 實現(xiàn) Java 的四個基礎(chǔ)部分。至少,這表明 Fuchsia 最終將會運(yùn)行 Java 代碼。
除此之外,提交記錄本身并沒有透露任何其他有趣的細(xì)節(jié),它只是調(diào)整了部分需要為 Fuchsia 和 Zircon 工作的代碼而并非針對 Linux 和 Android 做的改變。不過,在 Fuchsia 的代碼中目前也沒有相匹配的更改來表明其確切目的。
簡單推測一下,這是今年早些時候?qū)?Android Runtime 引入 Fuchsia 的后續(xù)工作。另一方面,這可能是 Google 想在最新的操作系統(tǒng)上運(yùn)行 Java 而做的努力。
三、為什么 Google 需要新的操作系統(tǒng)?
寫到了這里,或許很多人還是很不解,難道僅是因為 Android 被判壟斷,Google 就要放棄世界第一大操作系統(tǒng)這個香餑餑?事實上,Google 弱化 Android 這個品牌也絕非一天兩天,此前 CSDN 也總結(jié)了 Google 對于 Android 的種種動作,并發(fā)出《Google 要放棄 Android 了?》的疑問,對此,有網(wǎng)友@xg15 表示道:
Google 目前正在維護(hù)三個不同的操作系統(tǒng):Android,Chrome 操作系統(tǒng)和現(xiàn)在的 Fuchsia——過去就有很多消息謠傳他們可能會將它們統(tǒng)一起來。
所以我的猜測是他們要么不再強(qiáng)調(diào) Android,想要弱化之前操作系統(tǒng)碎片泄漏的事件影響,要么他們真的計劃在某些時候放棄 Android 技術(shù)基礎(chǔ)。
而即使是弱化 Android,那為何 Google 甚至也要棄 Linux 內(nèi)核去使用新的內(nèi)核?對此,外媒 Tomshardware 分析其中主要原因,一共有三:
從頭開始
曾經(jīng)的移動互聯(lián)網(wǎng)已在潛移默化中向萬物互聯(lián)時代過渡,Google 希望創(chuàng)建一個包羅萬象的操作系統(tǒng),而這個系統(tǒng)需要足夠纖薄,足以安全地處理從物聯(lián)網(wǎng)設(shè)備到個人電腦的任何事情。簡而言之,可以把它想象成 Android(用于物聯(lián)網(wǎng)的移動操作系統(tǒng))和 Windows(用于移動和物聯(lián)網(wǎng)的桌面操作系統(tǒng))的更薄版本。
過去很長的一段時間內(nèi),Google 早已在構(gòu)建操作系統(tǒng)方面積累了豐富的專業(yè)知識和專業(yè)知識,現(xiàn)在旨在利用所有這些知識去創(chuàng)建一個不受過去錯誤和遺留代碼困擾的新操作系統(tǒng)。這是一個全新的開始,也可以從開發(fā)現(xiàn)代操作系統(tǒng)的所有最新研究中受益。
拉開與 Java 的間隔,控制編程語言
第二點,今年 3 月,Google 和 Oracle 糾纏長達(dá)八年的“Java 侵權(quán)案”最終有了結(jié)果,令 Google 懊惱的是,美國聯(lián)邦巡回法院判其向 Oracle 賠償 88 億美元,其中主要緣由 Oracle 認(rèn)為 Android 抄襲了 Java 項目的部分。
不過即使沒有訴訟,Google 也沒有蘋果公司(Objective-C 和 Swift)和微軟(C#)的語言開發(fā)自由。所以,開發(fā)新一代操作系統(tǒng) Fuchsia 也是 Google 可以選擇更好控制的編程語言機(jī)會。
之前,Google 已經(jīng)創(chuàng)建了兩種語言,Go 和 Dart。現(xiàn)在看來,Google 似乎選擇 Dart 作為 Fuchsia 的主要應(yīng)用程序開發(fā)語言,且他們可能最終希望所有 Android 開發(fā)人員轉(zhuǎn)而使用 Dart 開發(fā)應(yīng)用程序。
減輕如同老系統(tǒng) Android 帶來的碎片化問題
開源的 Android 不像閉源的 iOS 系統(tǒng)那般容易管理,Android 的更新模式對 Google 而言尤其令人頭痛,Google 修復(fù) Android 漏洞的速度幾乎無關(guān)緊要,因為手機(jī)制造商和運(yùn)營商可以自行推出系統(tǒng)更新,這樣是常說的 Android 碎片化問題。
Chrome OS 已經(jīng)逃脫了這一更新的噩夢,因為雖然它背后的核心代碼是開源(Chromium OS),但商用的 Chrome OS 本身只能由 Google 修改。這使得 Google 可以完全控制更新周期。
四、Fuchsia 的未來
截止目前,Google 對于其新一代操作系統(tǒng) Fuchsia 的態(tài)度可謂非常的低調(diào)。那么對于這樣的一個項目,贏面究竟有多大?
此前,Google 的 Android 工程副總裁 Dave Burke 對 Fuchsia 系統(tǒng)做出過解釋稱,F(xiàn)uchsia 是一個早期的實驗項目,而在 Google 內(nèi)部有很多這種實驗項目,由于是早期項目,因此其還存在很大的變數(shù)。
確實如此,就國內(nèi)而言,至今仍未有一款真正的國產(chǎn)移動操作系統(tǒng)來與 Android 和 iOS 相抗衡,除了人才稀缺、財力消耗巨大等因素之外,重要的是系統(tǒng)生態(tài)問題。即使 Google 在 Fuchsia 上研發(fā)成功,倘若不能將 Android 上超過 10 億的用戶、開發(fā)商以及制造商平穩(wěn)的過渡,那么最終結(jié)局可能只會如微軟的 Windows Phone 一樣,失敗而終。