Raw OS硬實時操作系統(tǒng)
Raw-OS 起飛于2012年,Raw-OS志在制作中國人自己的最優(yōu)秀硬實時操作系統(tǒng)。
Raw-OS 操作系統(tǒng)特性
內(nèi)核最大關中斷時間無限接近0us, s3c2440系統(tǒng)最大關中斷時間實測0.8us。
支持idle任務級別的事件驅動,基于狀態(tài)機機制(fsm+hsm),所有idle 級別的事件任務共享一個棧!
支持輕量級線程protothread。
支持普通任務級別的狀態(tài)機和事件驅動機制。
支持tasklet以及workqueue,輕松降低系統(tǒng)最大關中斷時間到最低,以及大大提高了系統(tǒng)的實時性。
支持task 256個優(yōu)先級
支持task無限多個
支持semaphore無限多個
支持mutex無限多個,同時支持優(yōu)先級繼承算法和優(yōu)先級置頂算法,當優(yōu)先級反轉發(fā)生的的時候。
支持mutex在優(yōu)先級反轉過程中的任務優(yōu)先級逐步還原策略,以及解決了改變?nèi)蝿諆?yōu)先級等mutex帶來的副作用。
支持3種queue模塊(queue, queue_size, mqueue)無限多個, 支持queue的一對多群發(fā),包含了mail box 的功能。
支持軟件timer無限多個。
支持event無限多個。
支持task block 在任意queue 和semphore 上,同時支持and 和or 的處理。
調(diào)度算法采用雙向鏈表就緒隊列,省去位圖,采用目前世界上最快的bits搜索算法。
支持動態(tài)監(jiān)測所有任務棧空間大小,??臻g小于整體的12%。 系統(tǒng)馬上報錯。
任務能以FIFO和PRIO 兩種方式block 在semphore, mutex, queue, 等等對象上。
采用目前最快的計算tick timeout 的算法。
內(nèi)核狀態(tài)機的轉換機制非常健全。
同等優(yōu)先級調(diào)度,支持時間片輪。
支持滿足posix的標準調(diào)度SCHED_RR和SCHED_FIFO
支持posxi的pthread封裝
支持整個內(nèi)核配置成非搶占內(nèi)核。
支持內(nèi)核配置成非搶占內(nèi)核, 追求最大的數(shù)據(jù)吞吐量。
支持block內(nèi)存分配機制,適用于整塊的內(nèi)存分配,沒有內(nèi)存碎片.
支持byte內(nèi)存分配機制,適用于任何體積大小的分配,有內(nèi)存碎片,采用first fit 算法,支持臨接空閑塊的合并。
支持slab算法基于buddy。
支持基于大內(nèi)存的分配page算法。
支持c庫標準的malloc, calloc, recalloc,free.
支持發(fā)送消息的同時也發(fā)送消息長度(raw_queue_size)
支持滿足posix標準的大級別消息算法mqueue(raw_mqueue)
極其豐富的的API功能,內(nèi)核支持配置各種功能,最小內(nèi)核2K。
支持 8位,16位,32位的cpu以及dsp。
