姓名:王鑫磊
學號:21011110262
學院:通信工程學院
改編自:https://blog.csdn.net/qq_41125219/article/details/119066740?spm=1001.2100.3001.7377&depth_1utm_source=distribute.pc_feed_blog_category.none-task-blog-classify_tag-3-119066740-null-null.nonecase
【嵌牛導讀】HarmonyOS是一款面向萬物互聯(lián)時代的、全新的分布式操作系統(tǒng)。 在傳統(tǒng)的單設備系統(tǒng)能力基礎上灸促,HarmonyOS提出了基于同一套系統(tǒng)能力、適配多種終端形態(tài)的分布式理念艰赞,能夠支持手機、平板肚吏、智能穿戴猖毫、智慧屏、車機等多種終端設備须喂,提供全場景(移動辦公吁断、運動健康、社交通信坞生、媒體娛樂等)業(yè)務能力仔役。
【嵌牛鼻子】HarmonyOS,安卓是己,分布式操作系統(tǒng)又兵,萬物互聯(lián)
【嵌牛提問】?HarmonyOS能否全方位趕超Android操作系統(tǒng)?
【嵌牛正文】
1. HarmonyOS并不是Android的替代品
HarmonyOS與Android的對比相信是很多關注鴻蒙的人卒废,非常關注的一個焦點話題沛厨,我并不特別了解安卓(Android)開發(fā),只在大學期間有過一些課程的涉獵摔认,但是我想我既然想學鴻蒙(HarmonyOS)那就離不開去硬著頭皮探索這個問題逆皮!這里事先聲明,寫這篇文章之前我認真閱讀了很多知乎参袱、C站电谣、B站、HarmonyOS官網抹蚀、騰訊網關于HarmonyOS相關新聞等文章剿牺,也稍微跟了一些源碼最后做了這些總結。
(1)HarmonyOS并不是Android的替代品环壤,HarmonyOS與Android并非同一個賽道
(2)HarmonyOS目前缺乏生態(tài)支持這一點遠遠比不上Android晒来,但是HarmonyOS的戰(zhàn)略眼光更加高,未來可期
(3)HarmonyOS相比Android有一定的性能提升
2. 系統(tǒng)定位
安卓(Android):是一種基于Linux內核(不包含GNU組件)的自由及開放源代碼的操作系統(tǒng)郑现。主要使用于移動設備湃崩,如智能手機和平板電腦,由美國Google公司和開放手機聯(lián)盟領導及開發(fā)懂酱。
鴻蒙(HarmonyOS):是一款面向萬物互聯(lián)時代的竹习、全新的分布式操作系統(tǒng)。在傳統(tǒng)的單設備系統(tǒng)能力基礎上列牺,HarmonyOS提出了基于同一套系統(tǒng)能力整陌、適配多種終端形態(tài)的分布式理念,能夠支持手機、平板泌辫、智能穿戴随夸、智慧屏、車機等多種終端設備震放,提供全場景(移動辦公宾毒、運動健康、社交通信殿遂、媒體娛樂等)業(yè)務能力诈铛。
建議可以看下華為官方對于HarmonyOS系統(tǒng)定位的介紹視頻:
視頻地址:https://mos-vod-drcn.dbankcdn.cn/P_VT/video_injection/7C1346286/v3/7C5879811130980925606204416/MP4Mix_H.264_1920x1080_6000_HEAAC1_PVC_NoCut.mp4
從上面的簡單介紹就能很明顯的看出,Android和HarmonyOS兩款產品的研發(fā)初衷完全不一樣墨礁,根本就不在同一個賽道上幢竹,安卓系統(tǒng)面向的是手機端,而鴻蒙系統(tǒng)面向的是這些年比較的新的概念物聯(lián)網恩静,致力于利用其5G世界領先的技術焕毫,優(yōu)先布局和打造一個超級終端,萬物互聯(lián)的生態(tài)驶乾。
3. 內核對比
安卓(Android):基于linux的宏內核設計 邑飒,宏內核包含了操作系統(tǒng)絕大多數的功能和模塊,而且這些功能和模塊都具有最高的權限级乐,只要一個模塊出錯疙咸,整個系統(tǒng)就會崩潰,這也是安卓系統(tǒng)容易崩潰的原因唇牧。系統(tǒng)開發(fā)難度低罕扎。
鴻蒙(HarmonyOS):基于微內核設計,微內核僅包括了操作系統(tǒng)必要的功能模塊(任務管理丐重、內存分配等)處在核心地位具有最高權限,其他模塊不具有最高權限杆查,也就是說其他模塊出現(xiàn)問題扮惦,對于整個系統(tǒng)的運行是沒有阻礙的。微內核穩(wěn)定性很高亲桦。鴻蒙系統(tǒng)包含了兩個內核:Linux內核崖蜜、LiteOS內核
建議可以看下華為官方對于HarmonyOS的技術架構介紹視頻,它這個有對內核層總體架構有說明客峭。
內核層:(1)內核子系統(tǒng):HarmonyOS采用多內核設計豫领,支持針對不同資源受限設備選用適合的OS內核。內核抽象層(KAL舔琅,Kernel Abstract Layer)通過屏蔽多內核差異等恐,對上層提供基礎的內核能力,包括進程/線程管理、內存管理课蔬、文件系統(tǒng)囱稽、網絡管理和外設管理等。(2) 驅動子系統(tǒng):硬件驅動框架(HDF)是HarmonyOS硬件生態(tài)開放的基礎二跋,提供統(tǒng)一外設訪問能力和驅動開發(fā)战惊、管理框架。
視頻地址:https://mos-vod-drcn.dbankcdn.cn/P_VT/video_injection/D71346286/v3/2999FE4A1130980852826641152/MP4Mix_H.264_1920x1080_6000_HEAAC1_PVC_NoCut.mp4
4.運行速度
安卓(Android):基于Java語言編碼扎即,Java語言有個很大的缺點是其不能直接與底層操作系統(tǒng)通信吞获,需要通過虛擬機充當中間轉換的角色,這是每一個Java開發(fā)人員都知道的知識點谚鄙,JVM也是我們Java程序員必修的一門高級課程各拷。雖然Java語言由于虛擬機的優(yōu)化,編譯器的優(yōu)化襟锐,熱點代碼等技術使得其越來越快撤逢,但是無法直接與操作系統(tǒng)互相通信一直影響著其性能的突破(AOT(Ahead Of Time)技術我并未研究過,只了解Java的JIT(Just-in-time))粮坞。
鴻蒙(HarmonyOS):鴻蒙的開發(fā)也可以采用Java語言蚊荣,官方也推薦使用Java語言開發(fā),但是華為針對安卓或者說Java語言的這種特性莫杈,研發(fā)了方舟編譯器互例,通過方舟編譯器編譯的軟件可以直接與底層操作系統(tǒng)通信,方舟編譯器在這一層面做到了取代虛擬機筝闹。雖然沒有研究過媳叨,但是推斷應該是在打包的時候,通過方舟編譯器轉換為操作系統(tǒng)能夠讀懂的機器語言关顷,這樣就可以跳過虛擬機解釋這一步驟糊秆,當然這是肯定對機器的內存要求比較高,應該也存在啟動后無法繼續(xù)優(yōu)化等問題议双。
5.方舟編譯器
華為方舟編譯器作為一款全新的編譯器可以顯著提高手機的運行速度痘番,它不采用現(xiàn)有編譯器邊解釋邊執(zhí)行的模式,而是將這種動態(tài)編譯改為靜態(tài)編譯平痰,可以做到全程執(zhí)行機器碼汞舱,進而高效運行程序,大大縮短程序響應時間宗雇。
方舟編譯器的優(yōu)勢
(1)多語言聯(lián)合:將同一應用中的不同語言代碼聯(lián)合編譯昂芜、聯(lián)合優(yōu)化,消除語言間的性能“鴻溝”赔蒲,降低開發(fā)者的優(yōu)化成本
(2)輕量運行時:通過編譯器的語言實現(xiàn)能力和優(yōu)化能力增強泌神,應用運行時的開銷更小
(3)軟硬件協(xié)同:編譯器與芯片實現(xiàn)軟硬件協(xié)同優(yōu)化良漱,充分發(fā)揮硬件能效,應用體驗更佳
(4)多平臺支持:支持面向多樣化的終端設備平臺進行編譯和運行腻扇,根據設備特征提供便捷的開發(fā)與部署策略债热,提高開發(fā)效率
【嵌牛參考】