中國華為(Huawei)受到美國禁令影響,智慧型手機遭到Google 停止授權行動服務認證(Google Mobile Services, GMS),嚴重衝擊了華為的國際市場,特別是歐洲與日本地區。由於缺少重要的GMS 認證,將無法使用 Google 官方 APP 以及熱門的第三方應用程式,像是 Uber 、 Airbnb 、 Facebook 打卡或是Instagram 位置之類牽涉到 Google APIs 的服務。

不久後也遭到 Facebook 禁止預載社群服務,上述的禁令所造成的功能缺失,讓國外的電信通路商被迫下架手機,華為的海外市場面臨極端的困境。

但華為並不是毫無準備,自從 Google 禁令宣布以來,華為推出自己的作業系統「鴻蒙」的謠言便開始在市場流傳,據說從2012 年便開始研發。根據 Huawei Central 的消息,該作業系統因應 Google 禁令,預計2019年9月推出,號稱能相容所有的 Android APP ,並且具有手機、平板、穿戴裝置、車載裝置及智慧電視的模式,也會預載「APP Gallery」提供使用者下載應用程式,內容與現有的 Google Play Store 完全一致。

值得注意的是,華為宣稱鴻蒙作業系統的效能,高出現有的Android系統60% ,能帶來更流暢的使用體驗。

華為也在2019 年的5 月向歐洲提出商標專利的申請,名為「Ark OS」,普遍認為是鴻蒙的國際板名稱。另外作業系統的介面設計也同時曝光,整體的操作邏輯與設計類似華為現有的作業系統「EMUI」,並在截圖中看到「安卓綠色聯盟(Android Green Alliance)」的字樣── 這個聯盟是2016 年時由華為發起,聯合阿里巴巴、騰訊、百度、網易所成立,制定統一的 Android APP 開發標準,試圖解決版本碎片化的問題,目前聯盟的範圍涵蓋超過500個中國應用程式。

上述都不是來自華為的官方消息,僅僅是科技媒體蒐集到的消息,但確實提供了不少資訊,足夠猜測華為自主研發作業系統「鴻蒙」的雛形:以AOSP為基礎修改的Android Fork系統,因此能相容所有的Android APP ,也同時具有手機、平板、車用或是智慧電視等等的模式,並整合華為先前發表的獨家功能,例如EROFS文件系統,能提升讀取手機檔案的讀取效率。

其中最引人注目的還有今年4 月發布的方舟編譯器(Ark Compiler),宣稱能提升60%的作業系統效能,恰好與 Ark OS 有相同的品牌名稱── 華為將中國EMUI版本整合獨家研發的作業系統底層功能,再改名為「鴻蒙」,並搬到國際市場重新包裝成「Ark OS」,但跟舊版的 Android 系統差異在哪?

華為一向屬於研發能力較強的企業,據稱將加入兩項底層功能,能大幅改善Android 系統效能。

Linux 檔案系統:EROFS,據傳提升20% 的隨機讀寫性能

2018年6月,華為對外宣布了EROFS這項計畫,全名為 Extendable Read-Only File System ,由於 Android 大多數的檔案只會單純讀取,不需要使用其他的寫入功能。華為以 Linux 的檔案系統為基礎,開發出EROFS 文件格式,設計純粹以讀取使用為主,拔掉其他不必要的修改功能,因此檔案只要一經寫入便無法修改,藉此加快Android 系統的讀取效率。根據華為官方的測試,這項功能將提升20% 的隨機讀寫性能,同時採用新的壓縮技術來節省檔案空間,例如系統的佔用空間可以減少2GB 左右。

雖然說華為多次宣布 EROFS 計畫即將應用在 EMUI 系統中,但直到2019 年的現在,這項功能尚未應用到旗下的智慧型手機當中,目前遇到的困難包含系統的相容性之外,如果從現有的底層檔案格式F2FS 更改到 EROFS 的話,需要將整隻手機的儲存空間全部清除,再連結電腦進行重新安裝整個作業系統,顯然大部分的Android 手機無法適用這樣的更新方式。

系統效能提升60% 的關鍵:方舟編譯器(Ark Compiler)

方舟編譯器號稱能讓作業系統的運作效能提升24% 、系統回應速度44% 以及 APP流暢度60% (只以微博極致版進行測試,恰好與 Ark OS盛傳的60% 效能提升一致)。當今年4月推出時,許多人誤以為這是一項軟體更新,認為使用者只要下載了這項軟體更新,效能便能突飛猛進。

可惜的是,方舟編譯器並不是手機內部的軟體,而是「開發者使用的工具」,功能是協助開發者在開發應用程式時,直接將程式碼從「高階語言」轉換成處理器能讀懂的「組合語言(Assembly Language)」,直接打包成APK 檔供使用者安裝。

為何這樣能大幅提升效能?Android 的應用程式本身使用是使用 Java 程式語言,中間需要隔著一層虛擬機器(Virtual Machine)編譯成組合語言對處理器下達指令。

這個虛擬引擎好比中翻英的口譯員,當台上講者說出中文,就必須即時翻譯成英文讓下方的聽眾了解,但口譯的效率比起直接說英文還是慢的多,台下的聽眾要等口譯員翻譯並重述一次,過程會不免耗費額外時間,使得Android 隔著這層翻譯系統而降低不少的系統效能。

那為何應用程式不直接使用組合語言?事實上 Android 過去已經做過類似的實驗, Android 5.0 之前都是採用「解釋執行」加上JIT (Just in Time)模式,意思是系統「即時」將Java 程式碼編譯成組合語言給處理器,過程採用「邊解釋邊執行」,整體運作效率相當低下,這也是 Android 系統在初期的運作讓人感覺卡頓的主要原因,就像是餐廳開張時沒有預先處理食材,要廚師即時把菜洗好、肉切好、再立即把它炒成一道料理,當然會浪費不少時間。

到了 Android 5.0 之後,為了解決執行效率不彰的問題,Google 採用了 AOT (Ahead of Time)模式,系統在安裝應用程式的過程中便把程式碼從Java 提前編譯成組合語言,如此一來,系統便能直接處理指令,就像是講者直接說英文一樣,不需要口譯員進行翻譯跟溝通。

但這樣也產生了兩個問題,分別是安裝速度太慢以及佔有的儲存空間太過龐大,由於安裝過程要同時編譯程式碼,導致安裝速度會非常慢,另一方面是組合語言更為接近0與1,所以需要更龐大的儲存空間儲存這些數據,導致執行速度雖然快,但應用程式卻十分肥大,如同餐廳將處理完的大量食材全部塞在倉庫,廚師可以直接拿出來用沒錯,但前置作業時間很長,而且食材的存放相當耗費空間,使得Google不久後在 Android 7.0 便放棄這項功能。

Android 7.0之後,隨著手機處理器的性能躍進,Google進一步將編譯模式改為 JIT混和AOT ,原理是安裝應用程式不再進行編譯以加快安裝速度,但系統會分析使用者習慣,偵測常使用哪一些功能,並在系統閒置將這些常用的程式碼編譯成組合語言以加快系統執行速度。

回到方舟編譯器的主題,華為的設計原理很直接且簡單,這項工具能讓工程師在「開發階段」將應用程式的程式碼編譯成組合語言,如此一來,上傳到應用程式商店的APK 安裝檔直接是組合語言,不再需要 Android 系統額外進行編譯,能同時提升安裝速度與執行速度,但仍會占用龐大的儲存空間── 這項問題已經被動輒128 GB儲存空間解決。

方舟編譯器是所有的Android系統都能通用的開發工具,開發商只需使用方舟編譯器把應用程式重新編譯便能相容加速功能。為了推廣,華為官方宣布將方舟編譯器開源,讓全世界的第三方軟體工程師都能使用,預計2019年8月開放部分原始碼,並於10月全面對外開放,恰好與 Ark OS 的謠傳上線時間一致。

「鴻蒙」仍沒有解決關鍵問題:智慧型手機產業是一個生態系

華為對 Android作業系統投入這麼龐大的心力與研發成本,編譯器這種底層開發工具難度非常高,如果真的成功,足以顯現華為的高度技術能力,要重新採用另一個完全獨立的作業系統根本是不可能的事情,因此「鴻蒙」或是「Ark OS」很有可能是以現有的Android 作業系統整合上述兩項獨家技術,改良成獨立研發的作業系統── 由於已經動到底層架構,說鴻蒙只是套上另一層皮的 Android 也不恰當。

但智慧型手機作業系統畢竟是一個「生態(Ecosystems)」,即使有方舟編譯器,如果要讓所有的應用程式都支援,也要大部分第三方應用程式開發商願意使用方舟編譯器重新編譯自家的應用程式才行,否則這項編譯器只是擺著好看的工具。

華為自然也考慮到了這項困難,這也是華為發起「安卓綠色聯盟」的原因,未來聯盟成員應該都會相容方舟編譯器,例如微信、微博、支付寶、淘寶之類的相關APP ,中國市場內主流的APP大多都有涵蓋,境內市場推廣問題應該不大。

但問題來了,國際市場的第三方開發者願不願意特地為華為重新編譯應用程式?在美國禁令下,這恐怕很難,而且無法預載Goolge APPs 及 APIs 造成的影響也無法透過自研的作業系統解決,即使系統效能再高,在現今手機效能過剩的情況下,使用體驗上差異其實不大,此時應用程式的相容性反而更為重要。

還有一個問題,Android 手機仰賴 Google 提供安全性更新的服務,如果華為推出Android Fork手機,便需要自行維護更新,但鴻蒙作業系統已經動過底層架構,在未經過長時間的測試下,安全性風險其實相當的高── 據報導描述, Google也曾針對這項議題表達過憂慮。

過去Google要求手機製造商如果要預載其獨家服務,包含Google Play Store及Google Search,便不能發展及銷售Android Fork 的手機,這項政策遭到歐盟裁罰反壟斷之後,華為現在已經能在歐洲市場銷售Android Fork 的手機,但在缺乏Google支援的情況下,要如何解決缺少Google APIs 及安全性的問題,還有待華為仔細思考,畢竟一般消費市場不像工程師,有能力自行解決軟體問題,也要看電信商是不是願意販售學習門檻高的智慧型手機,否則華為只能走實體自營或是線上通路。

總和來說,從底層改良 Android 系統確實展現了華為的技術能力,但在已經成熟的智慧型手機生態系,競爭對手(包含中國品牌,像是小米、OPPO及VIVO)全都持有GMS服務與Google安全性支援,華為如何挽救國際市場仍是一項巨大的難題。

責任編輯:陳慶徽
核稿編輯:葛林