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