? ? ? ? 自從華為被禁后,多家美國公司紛紛宣布暫停合作的消息。其中,谷歌公司宣布暫停部分功能對華為終端的開放,引發了國內外媒體的廣泛關注。隨后,有消息稱華為將要推出自家鴻蒙OS操作系統,該系統將會打通手機、平板、電腦、可智能穿戴和汽車等領域的全部壁壘,或將成為蘋果iOS、谷歌Android和微軟Windows之外的超級系統。
? ? ? ? 更有消息指出,華為鴻蒙OS將會于6月24日香港發布。但隨后,華為公司出面辟謠,證實該消息為假。雖是如此,但華為鴻蒙OS的推出,基本上是板上釘釘。在行業內人士看來,四月份方舟編譯器的推出,便已經奏響了華為自主操作系統的"陣前曲"。
? ? ? ? 根據華為公布的方舟編譯器資料 可以推測鴻蒙系統是用C、C++語言編寫
? ? ? ? 先來看華為公布的方舟編譯器原理圖
? ? ? ? 從上面的華為方舟編譯器資料可知:
? ? ? ? 1、鴻蒙系統和方舟編譯器的思路應該是一樣:直接使用機器語言編寫app,取消安卓系統的ART虛擬機,直接編譯為二進制機器碼;
? ? ? ? 這樣的好處是:不需要中轉,執行速度快;劣勢是:必須要有大量的靜態方案、內存空間要求更高。
? ? ? ? 2、由于是用C、C++進行編寫app,對軟件開發人員要求高,提高了建設生態鏈的技術門檻。
? ? ? ? 3、由于華為目前有芯片、系統等軟件和硬件基礎,華為鴻蒙系統若走蘋果IOS封閉系統模式,雖然路途漫長但前途可觀。
? ? ? ? 但華為主業是通訊,并非手機,這和蘋果主業是手機的特點不同。華為沒有辦法全身心投入開發封閉式的鴻蒙系統。
? ? ? ? 華為因為手機并非主業,只能走開源之路。但作為手機制造商的華為,如何讓其他手機制造商使用的系統,將是一個巨大的難題。
? ? ? ? 畢竟沒有一個手機制造商去幫助一個依是裁判員又是運動員的手機系統發展,導致自己的市場份額縮減。
?可以預見的鴻蒙系統
? ? ? ? 1、除華為外其他國產手機公司不會安裝或重視。由于google禁售的是華為,對于小米等其他國產手機公司不禁售,因此小米等其他國產公司不會安裝鴻蒙系統,即便出于公共形象的壓力而安裝,也不會真正重視,最多就是做個樣子。
? ? ? ? 反正,內斗內行吧——除非華為讓渡鴻蒙系統的控制權!
? ? ? ? 2、鴻蒙系統即便能夠兼容安卓應用,在過了新鮮期之后,如何提升用戶體驗度是關鍵。如果像阿里OS一樣可以遠程刪除用戶的app,就直接死翹翹吧。
? ? ? ? 保持軟件開發商的利益和用戶體驗度的平衡,是鴻蒙系統能否生存的關鍵。開發商沒有得到利益,不會開發鴻蒙系統的app;用戶體驗度差,用戶就不會用鴻蒙系統。
? ? ? ? 鴻蒙、安卓、IOS的共同祖先是UNIX,而UNIX是C語言開發的,“鴻蒙”操作系統必然是C語言編寫的。“鴻蒙”操作系統提供給應用開發商的開發工具很可能是Java,下文具體說一說。
?“鴻蒙”操作系統的組成
? ? ? ? 華為的“鴻蒙”操作系統由四部分部分組成:Linux內核+麒麟處理器的運行庫+編譯器+虛擬機。
? ? ? ? Linux內核:Linux內核是開源的,由linux內核團隊維護,而linux的內核采用了C語言,而不是很多認為的C++,C語言的執行效率要遠高于面向對象的編程語言C++。
? ? ? ? 運行庫:運行庫在Linux基礎上,針對不同的處理器,運行庫需要進行適配。比如麒麟處理器指令集和高通處理器的指令集可能存在差異,不是完全相同,那么就存在一個適配的問題,而程序庫通常情況下采用C語言編寫。
? ? ? ? 虛擬機:虛擬機用于溝通操作系統和硬件,是兩者之間的橋梁,屏蔽了不同系統之間的差異性,可以實現跨平臺,同時很大程度上降低了應用開發難度。目前,普遍使用的虛擬機是Java虛擬機。
? ? ? ? 編譯器:編譯器將Java編寫的代碼轉換成虛擬機機器碼或者硬件可以直接認識的機器碼。華為的方舟編譯器實現了代碼的靜態編譯,相比傳統安卓應用流暢度提升了60%。
?“鴻蒙”和安卓的差異
? ? ? ? 鴻蒙操作系統兼容安卓應用,那么“鴻蒙”操作系統和安卓有什么區別呢?
? ? ? ? 1)架構不同
? ? ? ? 鴻蒙操作系統是微內核設計,而安卓系統是基于linux的宏內核設計,相比來說,微內核開發難度大,但是系統穩定性高。
? ? ? ? 宏內核,內核包含了操作系統絕大多數的功能,而且這些功能和模塊具有最高的權限,好處是系統開發難度低,但是各模塊具有最高權限,一個模塊出錯,整個系統崩潰,這也是安卓系統容易崩潰的原因。
? ? ? ? 微內核,內核僅包括了操作系統必要的功能模塊(任務管理、內存分配等),其他模塊不具有最高權限,系統穩定性得到了提升。
? ? ? ? 2)跨平臺支持
? ? ? ? 鴻蒙操作系統同時支持手機、電腦、智能穿戴設備、智能家居,形成一個無縫的、統一的操作系統,并且兼容所有的安卓應用。這個操作系統與谷歌正在研發的Fuchsia思路一致,是為5G和物聯網時代準備的,華為的“鴻蒙”操作系統提前發布,可能給華為一個反客為主的機會,按照余承東的說法“塞翁失馬,焉知非福”。
? ? ? ? 總之,華為的“鴻蒙”操作系統,底層(Linux內核、運行庫)是用C語言編寫的,虛擬機可能采用了C或者C++語言;面向應用開發商的開發環境很可能是Java語言。
( 整理自悟空問答 )