RTT操作系統


http://www.rt-thread.org/官網

RT-Thread RTOS,由國內一些專業開發人員開發、維護。它不僅僅是一款 高效、穩定的實時操作系統內核,也是一套面向嵌入式系統的軟件平台,覆蓋了:

  • 全搶占的實時操作系統內核
  • 小巧而與底層具體實現無關的文件系統
  • 輕型的TCP/IP協 議棧
  • 命令即C語言的shell命令行
  • 輕型的多窗口多線程圖形用戶界面。

目前RT-Thread RTOS在國內已經有十多家企業在使用,從數據采集、數據監控到機械控制,從ARM7芯片到STM32、LM3S等的Cortex-M3芯片,從實時內核、文件系統、shell命令行到輕型TCP/IP網絡協議棧,RT-Thread RTOS被證明是一款可用於產品並穩定運行的嵌入式實時操作系統。

 

RT-Thread 結構
 
 
 

實時操作系統核心

 
 

RT-Thread實時操作系統核心是一個高效的硬實時核心,它具備非常優異的實時性、穩定性、可剪裁性。最小可以到3k ROM占用、1k RAM占用。

  • 內核對象系統
  • 實時線程操作系統內部采用面向對象的方式設計,內建內核對象管理系統,能夠訪問/管理所有內核對象。內核對象包含了內核中絕大部分設施,而這些內核對象可 以是靜態分配的靜態對象,也可以是從系統內存堆中分配的動態對象。通過內核對象系統,RT-Thread可以做到不依賴於具體的內存分配方式,伸縮性得到 極大的加強。
  • 任務/線程調度
    支持以線程為基本調度單位的多任務系統。調度算法是基於優先級的全搶占式線程調度,支持256個線程優先級(亦可配置成32個線程優先級),0優先級代表 最高優先級,255優先級留給空閑線程使用;相同優先級上支持多個線程,這些相同優先級的線程采用可設置時間片長度的時間片輪轉調度;調度器尋找下一個最 高優先級就緒線程的時間是恆定的(O(1))。系統不限制線程數量的多少,只與物理平台的具體內存相關。
  • 同步機制
    系統支持semaphore,mutex等線程間同步機制。mutex采用優先級繼存方式以防止優先級翻轉。semaphore釋放動作可安全用於中斷服 務例程中。同步機制支持線程按優先級等待或按先進先出方式獲取信號量或互斥鎖。
  • 通信機制
    系統支持event,mailbox,message queue通信機制等。event支持多事件"或觸發"及"與觸發",適合於線程等待多個事件情況。mailbox中一個mail的長度固定為4字節,效 率較messagequeu高。通信設施中的發送動作可安全用於中斷服務例程中。通信機制支持線程按優先級等待或按先進先出方式獲取。
  • 時鍾,定時器
    系統默認使用時鍾節拍來完成同優先級任務的時間片輪轉調度;線程對內核對象的時間敏感性是通過系統定時器來實現的;定時器又分成了硬定時器和軟定時器,一 次定時及周期性定時。
  • 內存管理
    系統支持靜態內存池管理及動態內存堆管理。從靜態內存池中獲取/釋放內存塊時間恆定,而當內存池空時,可根據申請線程請求把申請線程掛起、立刻返回、或等 待一段時間仍未獲得返回。當其他線程釋內存塊到內存池時,將把掛起的線程喚醒。對於系統內存緊張的系統,RT-Thread也提供了小型的伙伴內存管理算 法。而對於擁有大一些內存的嵌入式系統,RT-Thread提供了性能非常高效的SLAB內存管理系統。
  • 診斷
    通過系統提供的FinSH shell系統,能夠查看到線程,信號量,互斥鎖,事件,郵箱,消息隊列的運行情況,以及各個線程的棧使用情況。
 
技術指標

基本內核配置資源占用情況: 13344字節 ROM,1800字節 RAM 簡化版資源占用情況: 2.5K ROM,1K RAM 線程上下文切換時間(在72MHz的STM32上采用邏輯分析儀測得的結果):掛起操作引起線程上下文切換:4.25 μs 信號量引起線程上下文切換:7.25 μs 郵箱引起線程上下文切換:8.63 μs

 

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM