LiteOS是在2015華為網路大會上華為發佈的敏捷網路3.0中的一個輕量級的物聯網操作系統,LiteOS體積只有10KB級。 在Hi3559A中,liteos是用於Cortex A53,用於處理MPP 媒體業務邏輯的; Huawei LiteOS基礎內核是最精簡的Huawei LiteOS操作系統 ...
LiteOS是在2015華為網路大會上華為發佈的敏捷網路3.0中的一個輕量級的物聯網操作系統,LiteOS體積只有10KB級。
在Hi3559A中,liteos是用於Cortex-A53,用於處理MPP 媒體業務邏輯的;
Huawei LiteOS基礎內核是最精簡的Huawei LiteOS操作系統代碼,包括任務管理、記憶體管理、時間管理、通信機制、中斷管理、隊列管理、事件管理、定時器、異常管理等操作系統基礎組件,可以單獨運行。
Huawei LiteOS Kernel 的優勢
- 高實時性,高穩定性。
- 超小內核,基礎內核體積可以裁剪至不到10K。
- 低功耗。
- 支持動態載入、分散載入。
- 支持功能靜態裁剪。
各模塊簡介
任務:
提供任務的創建、刪除、延遲、掛起、恢復等功能,以及鎖定和解鎖任務調度。支持任務按優先順序高低搶占調度及同優先順序時間片輪轉調度。
任務同步:
- 信號量:支持信號量的創建、刪除、申請和釋放等功能。
- 互斥鎖:支持互斥鎖的創建、刪除、申請和釋放等功能。
硬體相關:
- 中斷:提供中斷的創建、刪除、使能、禁止、請求位的清除等功能。
- 定時器:提供定時器的創建、刪除、啟動、停止等功能。
IPC通信:
提供事件、消息隊列功能。
- 事件:支持讀事件和寫事件功能
- 消息隊列:支持消息隊列的創建、刪除、發送和接收功能
時間管理
- 系統時間:系統時間是由定時器/計數器產生的輸出脈衝觸發中斷而產生的。
- Tick時間:Tick是操作系統調度的基本時間單位,對應的時長由系統主頻及每秒的Tick數決定,由用戶配置
- 軟體定時器:以Tick為單位的定時器功能,軟體定時器的超時處理函數在系統創建的Tick軟中斷中被調用
記憶體管理
- 提供靜態記憶體和動態記憶體兩種演算法,支持記憶體申請、釋放。目前支持的記憶體管理演算法有固定大小的BOX演算法、動態申請DLINK演算法。
- 提供記憶體統計、記憶體越界檢測功能。
異常接管
異常接管是指在系統運行過程中發生異常後,跳轉到異常處理信息的鉤子函數,列印當前發生異常函數調用棧信息,或者保存當前系統狀態的一系列動作。
Huawei LiteOS的異常接管,會在異常後列印發生異常的任務ID號、棧大小,以及LR、PC等寄存器信息;
動態載入
動態載入是一種軟體載入鏈接技術,不對組成程式的目標文件進行一次性鏈接載入,等到程式要運行時才進行鏈接載入。
Huawei LiteOS提供支持OBJ目標文件和SO共用目標文件的動態載入機制。
分散載入
分散載入是通過重排鏡像等手段,把關鍵業務優先載入,從而縮短啟動時間。