摘要
鴻蒙和LiteOS的內核都是一樣的名字,可它們究竟有什么不同呢?一起來對比一下文件吧!
HarmonyOS是一款“面向未來”、面向全場景(移動辦公、運動健康、社交通信、媒體娛樂等)的分布式操作系統。在傳統的單設備系統能力的基礎上,HarmonyOS提出了基于同一套系統能力、適配多種終端形態的分布式理念,能夠支持多種終端設備。
01
分布式軟總線
分布式軟總線是多種終端設備的統一基座,為設備之間的互聯互通提供了統一的分布式通信能力,能夠快速發現并連接設備,高效地分發任務和傳輸數據。
02
分布式設備虛擬化
分布式設備虛擬化平臺可以實現不同設備的資源融合、設備管理、數據處理,多種設備共同形成一個超級虛擬終端。針對不同類型的任務,為用戶匹配并選擇能力合適的執行硬件,讓業務連續地在不同設備間流轉,充分發揮不同設備的資源優勢。
03
分布式數據管理
分布式數據管理基于分布式軟總線的能力,實現應用程序數據和用戶數據的分布式管理。用戶數據不再與單一物理設備綁定,業務邏輯與數據存儲分離,應用跨設備運行時數據無縫銜接,為打造一致、流暢的用戶體驗創造了基礎條件。
04
分布式任務調度
分布式任務調度基于分布式軟總線、分布式數據管理、分布式Profile等技術特性,構建統一的分布式服務管理(發現、同步、注冊、調用)機制,支持對跨設備的應用進行遠程啟動、遠程調用、遠程連接以及遷移等操作,能夠根據不同設備的能力、位置、業務運行狀態、資源使用情況,以及用戶的習慣和意圖,選擇合適的設備運行分布式任務。
05
一次開發,多端部署
HarmonyOS提供了用戶程序框架、Ability框架以及UI框架,支持應用開發過程中多終端的業務邏輯和界面邏輯進行復用,能夠實現應用的一次開發、多端部署,提升了跨設備應用的開發效率。一次開發、多端部署。
06
統一OS,彈性部署
HarmonyOS通過組件化和小型化等設計方法,支持多種終端設備按需彈性部署,能夠適配不同類別的硬件資源和功能需求。支撐通過編譯鏈關系去自動生成組件化的依賴關系,形成組件樹依賴圖,支撐產品系統的便捷開發,降低硬件設備的開發門檻。
HarmonyOS系統架構整體遵從分層設計,從下向上依次為:內核層、系統服務層、框架層和應用層。系統功能按照“系統]Huawei LiteOS是華為針對物聯網領域推出的輕量級物聯網操作系統,是華為物聯網戰略的重要組成部分,具備輕量級、低功耗、互聯互通、組件豐富、快速開發等關鍵能力,基于物聯網領域業務特征打造領域性技術棧,為開發者提供 “一站式” 完整軟件平臺,有效降低開發門檻、縮短開發周期,可廣泛應用于可穿戴設備、智能家居、車聯網、LPWA等領域。
Huawei LiteOS
Huawei LiteOS自開源社區發布以來,圍繞物聯網市場從技術、生態、解決方案、商用支持等多維度使能合作伙伴,構建開源的物聯網生態,目前已經聚合了50+ MCU和解決方案合作伙伴,共同推出一批開源開發套件和行業解決方案,幫助眾多行業客戶快速的推出物聯網終端和服務,客戶涵蓋抄表、停車、路燈、環保、共享單車、物流等眾多行業,加速物聯網產業發展和行業數字化轉型。
關鍵特性
1
低功耗框架
LiteOS是輕量級的物聯網操作系統,最小內核尺寸僅為6KB,具備快速啟動、低功耗等優勢,tickless機制顯著降低傳感器數據采集功耗。
2
OpenCPU架構
專為LiteOS小內核架構設計,滿足硬件資源受限需求,比如LPWA場景下的水表、氣表、車檢器等,通過MCU和通信模組二合一的OpenCPU架構,顯著降低終端體積和終端成本。
3
安全性設計
構建低功耗安全傳輸機制,支持雙向認證、FOTA固件差分升級,DTLS/DTLS+等,構建低功耗安全傳輸機制。
4
端云互通組件
LiteOS SDK端云互通組件是終端對接到IoT云平臺的重要組件,集成了 LwM2M、CoAP、MQTT、mbed TLS、LwIP等全套IoT互聯互通協議棧,大大減少開發周期,快速入云。
5
SOTA遠程升級
SOTA遠程升級,通過差分方式降低升級包的尺寸,更能適應低帶寬網絡環境和電池供電環境,經過特別優化差分合并算法,對RAM資源要求更少,滿足海量低資源終端的升級訴求。
系統支持對比
從官網的數據來看,目前HUAWEI LiteOS支持的硬件比鴻蒙還是豐富一些,提供了更多內核案例和移植策略,從代碼來看,它們都支持Cortex-M內核和Cortex-A內核,HarmonyOS內核文件分別有兩個,即liteos-a和liteos-m,例程分別有對應的支持,從內核名稱上看到liteos的字樣,可以推測鴻蒙內核對于Huawei LiteOS內核具有一定的繼承性;而Huawei LiteOS開源主線上僅用一個統一的內核支持了多種CPU架構,可以從Arch目錄下看到提供了對Cortex-A(包括32位及64位處理器)的支持,以及Cortex-M的支持。
總結兩個系統對硬件內核架構的支持情況。
因為產品定位不同,兩個系統的對內存的差別也是非常大,HUAWEI LiteOS因為其具有很高的剪裁特性,在硬件資源有限的時候的僅保留內核,可以剪裁到6KB的ROM以及消耗2KB的RAM資源,可以說對資源的消耗是低到一定程度,而HarmonyOS為了保證系統性能要求,對硬件的資源則是128K的ROM及2MB的RAM的要求。
從資源消耗可以看出,HUAWEI]現在兩個系統都已經開始在市場在開發者在進行學習和開發,那對其硬件的支持又是如何,總結如下表:
HarmonyOS的開發板支持目前還是以華為自研的芯片為主,都是自身主打的IOT及視頻處理芯片,這樣開發速度快可以更快的應用到自己的設備上,驗證系統可靠性;HUAWEI LiteOS除了支持華為自研芯片的開發板外,還支持了市場上主流的ARM開發學習板(如STM原生、小熊派、野火、正點原子等),同時提供了移植指南,可以讓開發者更容易進行開發板適配以及內核移植,并輕松進行IoT業務的上手和開發。
內核文件對比
因為兩者對Cortex-M的內核名字都是liteos-m,因為我就對比了兩者的內核kernel文件夾。
文件庫地址
HarmonyOS-liteos-m:
https://gitee.com/openharmony/kernel_liteos_m.git;
HUAWEI LiteOS:https://gitee.com/LiteOS/LiteOS.git;
從gitee上的庫kernel文件夾下的文件的日期都是兩個月前,說明內核的發布時間比較一致,那文件的內容,分別對比文件目錄,發現有很大的相似性,共有文件目錄都是/base;/extended;/include;HUAWEI LiteOS下會有一個Kconfig和Makefile用于文件包含定義和Kconfig文件菜單生成;而HarmonyOS則是BULD.gn和los_init.c分別用于IDE的文件編譯及內核文件剪輯初始化文件,文件功能基本移植,只是適配的編譯環境不同。
從這里開始就有些不同,base下的文件夾設置兩者的區別較大。
左邊是HarmonyOS,右邊是HUAWEI]左邊是HarmonyOS提供task操作接口,右邊是HUAWEI LiteOS提供task操作接口,都提供了task的初始化(建立),文件上下文查詢,鉤子函數的使用,同時HarmonyOS提供了所有task的信息獲取,HUAWEI LiteOS提供了task入口地址的獲取的細節功能。
左邊是HarmonyOS提供task操作接口,右邊是HUAWEI LiteOS提供task操作接口,都提供了task的初始化(建立),文件上下文查詢,鉤子函數的使用,同時HarmonyOS提供了所有task的信息獲取,HUAWEI LiteOS提供了task入口地址的獲取的細節功能。
今天分享到這里,后面希望可以分享各自系統移植及使用。
責任編輯:lq
-
操作系統
+關注
關注
37文章
6747瀏覽量
123201 -
分布式
+關注
關注
1文章
880瀏覽量
74470 -
鴻蒙
+關注
關注
57文章
2321瀏覽量
42749 -
OpenHarmony
+關注
關注
25文章
3665瀏覽量
16161
原文標題:科普干貨|談談鴻蒙LiteOS-M與HUAWEI LiteOS內核的幾大不同之處
文章出處:【微信號:HarmonyOS_Community,微信公眾號:電子發燒友開源社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論