鴻蒙開源嗎?這個問題其實早已有了定論,早在2020年,部分鴻蒙系統(tǒng)的代碼就已經在開放原子開源基金會中公開,任何開發(fā)者都可以自由下載、使用和修改開源代碼,實質上已經是開源系統(tǒng)。
但是,開源的是哪一部分系統(tǒng)?什么時候實現(xiàn)完全開源?卻因為華為不同部門的不同說法而產生了各種各樣的誤解,有的說僅僅捐贈部分代碼,有的則說是完全開放。
華為已經于2020年、2021年分兩次將鴻蒙系統(tǒng)的所有基礎能力全部捐獻給開放原子開源基金會,形成OpenHarmony開源項目,該項目已有245位貢獻者,最新的版本為OpenHarmony2.0。
OpenHarmony整體遵從分層設計,從下向上依次為:內核層、系統(tǒng)服務層、框架層和應用層。系統(tǒng)功能按照“系統(tǒng) 》 子系統(tǒng) 》 組件”逐級展開,在多設備部署場景下,支持根據實際需求裁剪某些非必要的組件。
首先要澄清一下這次開源的內容,這個代碼庫和很多用戶最新手機升級的鴻蒙系統(tǒng)不是一個東西,如果按照正常的開發(fā)流程,這個開源的庫應該是手機用戶升級的系統(tǒng)HarmonyOS2.0的一部分,需要添加AOSP部分和其它一些功能模塊之后才可能構建出來手機上推送的系統(tǒng)。開源部分如果構建僅僅可以構建出用于IOT設備上的系統(tǒng),或是手機上的一個裸系統(tǒng),不能運行安卓apk和華為hap應用的裸系統(tǒng),應該可以運行基于html+js的小程序。
主要源碼目錄功能
1. Third_party目錄功能最大,包含的是第三方庫和功能模塊。
2. Kernel包含的是內核模塊,包含linux內核和鴻蒙的嵌入式內核
其中liteos_a是適用包含mmu模塊芯片的內核,liteos_m是適用無mmu模塊的芯片的內核。其實內核源碼目錄華為放了很多編譯好的工具,內核代碼本身并沒有那么大。一個有意思的現(xiàn)象是risc-v目錄相關的代碼量很大,是不是意味著華為已經要在risc-v上加大投入了。
3. Applications 目錄是一些官方提供的示例app,其中基于js的小程序是有源碼的,基于java的hap是沒有源碼的。而且同時也應該支持c++與js混編,不過我沒找到相關的SDK介紹。
4. Base是系統(tǒng)服務層一系列簡單封裝目地是為上層提供簡單的接口,目前主要包括賬號、傳感器、安全、電源管理等模塊。不過感覺這塊目前非常簡陋,估計只有嵌入式IoT設備會采用這些資源相對少的管理方式
5. Developtools主要是包含了開發(fā)輔助工具,并沒有什么特別的東西。其中讓我感興趣的是其中的profiler模塊,這個模塊的完善程度讓人震驚,估計是華為很早有有所積累從其它項目經驗中搬運過來的。
6. Drivers 是驅動接口中間層,如果要移植新新設備上,可以在底層通過系統(tǒng)相關的匯編和C語言對接這些驅動中間層,這樣可以降低移植成本并提供良好的兼容性。對于要假如鴻蒙生態(tài)的IoT設備廠商,應該主要去研究這塊。
7. Foundation 這塊應該是這次開源最重要的部分,這塊是驅動鴻蒙獨家應用的主體部分,包括接口設計和執(zhí)行引擎的部分。
這部分的設計應該借鑒了蘋果的Core Foundation的設計,同時提供了與蘋果不同的一些組件,比如軟總線部分。同時華為把js框架底層封裝的執(zhí)行引擎也放到了Foundation之中,這點其實是有些不合理的。
不管從哪個角度來看OpenHarmony的開源都有著重大意義,不管是對國家而言還是對于整個中國互聯(lián)網生態(tài)而言皆是如此,至少在未來我們不需要擔心在失去了Android和iOS后,整個互聯(lián)網生態(tài)難以為繼。
責任編輯:lq
-
開源
+關注
關注
3文章
3412瀏覽量
42746 -
鴻蒙系統(tǒng)
+關注
關注
183文章
2638瀏覽量
66768 -
OpenHarmony
+關注
關注
25文章
3753瀏覽量
16670
發(fā)布評論請先 登錄
相關推薦
評論