華為LiteOS內核學習
最近在學習華為IOT全棧工程師培訓,簡要分享一下學習的系統內核知識吧。
Huawei LiteOS 是華為面向IoT領域,構建的輕量級物聯網操作系統,遵循BSD-3開源許可協議,可廣泛應用于智能家居、個人穿戴、車聯網、城市公共服務、制造業等領域,大幅降低設備布置及維護成本,有效降低開發門檻、縮短開發周期。2015 年 5 月 20 日,在 2015 華為網絡大會上,華為發布最輕量級的物聯網操作系統LiteOS。LiteOS開源項目目前支持 ARM Cortex-A核、ARM Cortex-M0,Cortex-M3,Cortex-M4,Cortex-M7 等芯片架構。框架結構如下圖:
liteOS不止提供傳統嵌入式操作系統提供的內核功能,還挺豐富的中間層組件功能,如互聯互通、傳感器框架、低功耗框架、AI框架、JS引擎,安全框架,同時還在不斷豐富自己的組件功能,同時也歡迎廣大開發者共享自己的代碼到組件層中
軟件許可采用BSD 3-Clause License許可進行分享和授權,開發者可以進行自由的剪裁和開發工作,不必為產權問題過分憂心。
Huawei LiteOS 是華為面向物聯網領域開發的一個基于實時內核的輕量級操作系統。基礎內核支持任務管理、內存管理、時間管理、通信機制、中斷管理、隊列管理、事件管理、定時器等操作系統基礎組件,更好地支持低功耗場景,支持 Tickless 機制,支持定時器對齊。內核框架如下圖:
任務
提供任務的創建、刪除、延遲、掛起、恢復等功能,以及鎖定和解鎖任務調度。支持任務按優先級高低的搶占調度及同優先級時間片輪轉調度。
任務同步
信號量:支持信號量的創建、刪除、申請和釋放等功能。
互斥鎖:支持互斥鎖的創建、刪除、申請和釋放等功能。
硬件相關
提供中斷、定時器等功能。
中斷:提供中斷的創建、刪除、使能、禁止、請求位的清除等功能。
定時器:提供定時器的創建、刪除、啟動、停止等功能。
IPC通信
提供事件、消息隊列功能。
事件:支持讀事件和寫事件功能。
消息隊列:支持消息隊列的創建、刪除、發送和接收功能。
時間管理
系統時間:系統時間是由定時/計數器產生的輸出脈沖觸發中斷而產生的。
Tick時間:Tick是操作系統調度的基本時間單位,對應的時長由系統主頻及每秒Tick數決定,由用戶配置。
軟件定時器:以Tick為單位的定時器功能,軟件定時器的超時處理函數在系統創建的Tick軟中斷中被調用。
內存管理
提供靜態內存和動態內存兩種算法,支持內存申請、釋放。目前支持的內存管理算法有固定大小的BOX算法、動態申請SLAB、DLINK算法。
提供內存統計、內存越界檢測功能。
Huawei LiteOS Kernel的優勢:
高實時性,高穩定性;超小內核,基礎內核體積可以裁剪至不到10K;低功耗;支持功能靜態裁剪。
輕量級操作系統 LiteOS
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。