1. 程式人生 > >RTthread學習筆記————第2章 RTthread簡介

RTthread學習筆記————第2章 RTthread簡介

  • RTthread 

RT-Thread,全稱是 Real Time-Thread,顧名思義,它是一個嵌入式實時多執行緒作業系統,基本 屬性之一是支援多工,允許多個任務同時執行並不意味著處理器在同一時刻真地執行了多個任 務。事實上,一個處理器核心在某一時刻只能執行一個任務,由於每次對一個任務的執行時間很短、 任務與任務之間通過任務排程器進行非常快速地切換(排程器根據優先順序決定此刻該執行的任務), 給人造成多個任務在一個時刻同時執行的錯覺。

相較於 Linux 作業系統,RT-Thread 體積小,成本低,功耗低、啟動快速,除此以外 RT-Thread 還具有實時性高、佔用資源小等特點,非常適用於各種資源受限(如成本、功耗限制等)的場合。 雖然 32 位 MCU 是它的主要執行平臺,實際上很多帶有 MMU、基於 ARM9、ARM11 甚至 Cortex-A 系列級別 CPU 的應用處理器在特定應用場合也適合使用 RT-Thread。

  • RTthread的架構

 

(1)核心層:RT-Thread 核心,是 RT-Thread 的核心部分,包括了核心系統中物件的實現,例 如多執行緒及其排程、訊號量、郵箱、訊息佇列、記憶體管理、定時器等;libcpu/BSP(晶片移植相關 檔案/板級支援包)與硬體密切相關,由外設驅動和 CPU 移植構成。 (2)元件與服務層:元件是基於 RT-Thread 核心之上的上層軟體,例如虛擬檔案系統、FinSH 命令列介面、網路框架、裝置框架等。採用模組化設計,做到元件內部高內聚,元件之間低耦合。 (3)RT-Thread 軟體包:運行於 RT-Thread 物聯網作業系統平臺上,面向不同應用領域的通 用軟體元件,由描述資訊、原始碼或庫檔案組成。RT-Thread 提供了開放的軟體包平臺,這裡存放 了官方提供或開發者提供的軟體包,該平臺為開發者提供了眾多可重用軟體包的選擇,這也是 RT-Thread 生態的重要組成部分。

  • RTthread小結

本章對 RT-Thread 進行了簡單介紹,它不僅僅是一個實時核心,還具備豐富的中間層元件,是 一款真正意義上的 IoT OS。其特點是核心資源佔用極小、高實時性、系統可裁剪、具備口碑極佳 除錯工具 FinSH 等。由於 RT-Thread 完全開源,我們可以在官方網站直接獲取到原始碼及文件。