chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

RT-Thread學習筆記 RT-Thread的架構概述

lucky的記錄與分享 ? 2022-07-09 11:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

RT-Thread 簡介

作為一名 RTOS 的初學者,也許你對 RT-Thread 還比較陌生。然而,隨著你的深入接觸,你會逐漸發(fā)現(xiàn) RT-Thread 的魅力和它相較于其他同類型 RTOS 的種種優(yōu)越之處。RT-Thread 是一款完全由國內(nèi)團隊開發(fā)維護的嵌入式實時操作系統(tǒng)(RTOS),具有完全的自主知識產(chǎn)權。經(jīng)過 16 個年頭的沉淀,伴隨著物聯(lián)網(wǎng)的興起,它正演變成一個功能強大、組件豐富的物聯(lián)網(wǎng)操作系統(tǒng)。

RT-Thread 概述

RT-Thread,全稱是 Real Time-Thread,顧名思義,它是一個嵌入式實時多線程操作系統(tǒng),基本屬性之一是支持多任務,允許多個任務同時運行并不意味著處理器在同一時刻真地執(zhí)行了多個任務。事實上,一個處理器核心在某一時刻只能運行一個任務,由于每次對一個任務的執(zhí)行時間很短、任務與任務之間通過任務調(diào)度器進行非??焖俚厍袚Q(調(diào)度器根據(jù)優(yōu)先級決定此刻該執(zhí)行的任務),給人造成多個任務在一個時刻同時運行的錯覺。在 RT-Thread 系統(tǒng)中,任務通過線程實現(xiàn)的,RT-Thread 中的線程調(diào)度器也就是以上提到的任務調(diào)度器。

RT-Thread 主要采用 C 語言編寫,淺顯易懂,方便移植。它把面向?qū)ο蟮脑O計方法應用到實時系統(tǒng)設計中,使得代碼風格優(yōu)雅、架構清晰、系統(tǒng)模塊化并且可裁剪性非常好。針對資源受限的微控制器MCU)系統(tǒng),可通過方便易用的工具,裁剪出僅需要 3KB Flash、1.2KB RAM 內(nèi)存資源的 NANO 版本(NANO 是 RT-Thread 官方于 2017 年 7 月份發(fā)布的一個極簡版內(nèi)核);而對于資源豐富的物聯(lián)網(wǎng)設備,RT-Thread 又能使用在線的軟件包管理工具,配合系統(tǒng)配置工具實現(xiàn)直觀快速的模塊化裁剪,無縫地導入豐富的軟件功能包,實現(xiàn)類似 Android 的圖形界面及觸摸滑動效果、智能語音交互效果等復雜功能。

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

許可協(xié)議

RT-Thread 系統(tǒng)完全開源,3.1.0 及以前的版本遵循 GPL V2 + 開源許可協(xié)議。從 3.1.0 以后的版本遵循 Apache License 2.0 開源許可協(xié)議,可以免費在商業(yè)產(chǎn)品中使用,并且不需要公開私有代碼。

RT-Thread 的架構

近年來,物聯(lián)網(wǎng)(Internet Of Things,IoT)概念廣為普及,物聯(lián)網(wǎng)市場發(fā)展迅猛,嵌入式設備的聯(lián)網(wǎng)已是大勢所趨。終端聯(lián)網(wǎng)使得軟件復雜性大幅增加,傳統(tǒng)的 RTOS 內(nèi)核已經(jīng)越來越難滿足市場的需求,在這種情況下,物聯(lián)網(wǎng)操作系統(tǒng)(IoT OS)的概念應運而生。物聯(lián)網(wǎng)操作系統(tǒng)是指以操作系統(tǒng)內(nèi)核(可以是 RTOS、Linux 等)為基礎,包括如文件系統(tǒng)、圖形庫等較為完整的中間件組件,具備低功耗、安全、通信協(xié)議支持和云端連接能力的軟件平臺,RT-Thread 就是一個 IoT OS。

RT-Thread 與其他很多 RTOS 如 FreeRTOS、uC/OS 的主要區(qū)別之一是,它不僅僅是一個實時內(nèi)核,還具備豐富的中間層組件,如下圖所示。

它具體包括以下部分:

  • 內(nèi)核層:RT-Thread 內(nèi)核,是 RT-Thread 的核心部分,包括了內(nèi)核系統(tǒng)中對象的實現(xiàn),例如多線程及其調(diào)度、信號量、郵箱、消息隊列、內(nèi)存管理、定時器等;libcpu/BSP(芯片移植相關文件 / 板級支持包)與硬件密切相關,由外設驅(qū)動和 CPU 移植構成。

  • 組件與服務層:組件是基于 RT-Thread 內(nèi)核之上的上層軟件,例如虛擬文件系統(tǒng)、FinSH 命令行界面、網(wǎng)絡框架、設備框架等。采用模塊化設計,做到組件內(nèi)部高內(nèi)聚,組件之間低耦合。

  • RT-Thread 軟件包:運行于 RT-Thread 物聯(lián)網(wǎng)操作系統(tǒng)平臺上,面向不同應用領域的通用軟件組件,由描述信息、源代碼或庫文件組成。RT-Thread 提供了開放的軟件包平臺,這里存放了官方提供或開發(fā)者提供的軟件包,該平臺為開發(fā)者提供了眾多可重用軟件包的選擇,這也是 RT-Thread 生態(tài)的重要組成部分。軟件包生態(tài)對于一個操作系統(tǒng)的選擇至關重要,因為這些軟件包具有很強的可重用性,模塊化程度很高,極大的方便應用開發(fā)者在最短時間內(nèi),打造出自己想要的系統(tǒng)。RT-Thread 已經(jīng)支持的軟件包數(shù)量已經(jīng)達到 400+,如下舉例:

  • 物聯(lián)網(wǎng)相關的軟件包:Paho MQTT、WebClient、mongoose、WebTerminal 等等。

  • 腳本語言相關的軟件包:目前支持 Lua、JerryScript、MicroPythonPikaScript。

  • 多媒體相關的軟件包:Openmv、mupdf。

  • 工具類軟件包:CmBacktrace、EasyFlash、EasyLogger、SystemView。

  • 系統(tǒng)相關的軟件包:RTGUI、Persimmon UI、lwext4、partition、SQLite 等等。

  • 外設庫與驅(qū)動類軟件包:RealTek RTL8710BN SDK。

  • 其他。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5208

    文章

    20620

    瀏覽量

    336706
  • 內(nèi)核
    +關注

    關注

    4

    文章

    1474

    瀏覽量

    43088
  • RTOS
    +關注

    關注

    25

    文章

    868

    瀏覽量

    123202
  • RT-Thread
    +關注

    關注

    32

    文章

    1634

    瀏覽量

    45174
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    RT-Thread學習筆記】使用scons命令生成靜態(tài)庫

    RT-Thread學習筆記】如何使用scons 命令中buildlib的生成靜態(tài)庫?
    的頭像 發(fā)表于 07-27 09:13 ?8517次閱讀
    【<b class='flag-5'>RT-Thread</b><b class='flag-5'>學習</b><b class='flag-5'>筆記</b>】使用scons命令生成靜態(tài)庫

    【原創(chuàng)精選】RT-Thread征文精選技術文章合集

    的一些分享。基于RT-Thread+RA6M4的智能安防系統(tǒng)詳解NO12 專欄作者 :lucky的記錄與分享RT-Thread學習筆記 RT-Thr
    發(fā)表于 07-26 14:56

    RT-Thread Nano入門學習筆記

    RT-Thread Nano入門學習筆記
    發(fā)表于 11-26 12:36 ?20次下載
    <b class='flag-5'>RT-Thread</b> Nano入門<b class='flag-5'>學習</b><b class='flag-5'>筆記</b>

    RT-Thread 應用筆記 - RTC Alarm 組件的使用

    RT-Thread 應用筆記 - 不正確使用LOG也會引發(fā)hard faultRT-Thread 應用筆記 - RTC Alarm 組件的使用RT-
    發(fā)表于 01-25 18:18 ?10次下載
    <b class='flag-5'>RT-Thread</b> 應用<b class='flag-5'>筆記</b> - RTC Alarm 組件的使用

    RT-Thread 內(nèi)核學習筆記 - 理解defunct僵尸線程

    RT-Thread 內(nèi)核學習筆記 - 內(nèi)核對象rt_objectRT-Thread 內(nèi)核學習筆記
    發(fā)表于 01-25 18:19 ?9次下載
    <b class='flag-5'>RT-Thread</b> 內(nèi)核<b class='flag-5'>學習</b><b class='flag-5'>筆記</b> - 理解defunct僵尸線程

    RT-Thread 內(nèi)核學習筆記 - 設備模型rt_device的理解

    RT-Thread 內(nèi)核學習筆記 - 內(nèi)核對象rt_objectRT-Thread 內(nèi)核學習筆記
    發(fā)表于 01-25 18:19 ?8次下載
    <b class='flag-5'>RT-Thread</b> 內(nèi)核<b class='flag-5'>學習</b><b class='flag-5'>筆記</b> - 設備模型<b class='flag-5'>rt</b>_device的理解

    RT-Thread 內(nèi)核學習筆記 - 內(nèi)核對象鏈表結(jié)構深入理解

    RT-Thread 內(nèi)核學習筆記 - 內(nèi)核對象rt_objectRT-Thread 內(nèi)核學習筆記
    發(fā)表于 01-25 18:23 ?6次下載
    <b class='flag-5'>RT-Thread</b> 內(nèi)核<b class='flag-5'>學習</b><b class='flag-5'>筆記</b> - 內(nèi)核對象鏈表結(jié)構深入理解

    RT-Thread 內(nèi)核學習筆記 - 內(nèi)核對象初始化鏈表組織方式

    RT-Thread 內(nèi)核學習筆記 - 內(nèi)核對象rt_objectRT-Thread 內(nèi)核學習筆記
    發(fā)表于 01-25 18:24 ?3次下載
    <b class='flag-5'>RT-Thread</b> 內(nèi)核<b class='flag-5'>學習</b><b class='flag-5'>筆記</b> - 內(nèi)核對象初始化鏈表組織方式

    RT-Thread 內(nèi)核學習筆記 - 內(nèi)核對象操作API

    RT-Thread 內(nèi)核學習筆記 - 內(nèi)核對象rt_objectRT-Thread 內(nèi)核學習筆記
    發(fā)表于 01-25 18:26 ?7次下載
    <b class='flag-5'>RT-Thread</b> 內(nèi)核<b class='flag-5'>學習</b><b class='flag-5'>筆記</b> - 內(nèi)核對象操作API

    RT-Thread學習筆記】Makefile的FORCE

    RT-Thread學習筆記】十分鐘學會Makefile的FORCE
    的頭像 發(fā)表于 07-30 13:55 ?3973次閱讀
    【<b class='flag-5'>RT-Thread</b><b class='flag-5'>學習</b><b class='flag-5'>筆記</b>】Makefile的FORCE

    RT-Thread學習筆記】如何抓取終端的網(wǎng)絡報文

    RT-Thread學習筆記】如何抓取終端的網(wǎng)絡報文?
    的頭像 發(fā)表于 07-30 13:57 ?4281次閱讀
    【<b class='flag-5'>RT-Thread</b><b class='flag-5'>學習</b><b class='flag-5'>筆記</b>】如何抓取終端的網(wǎng)絡報文

    RT-Thread學習筆記】用memwatch排除內(nèi)存泄露

    RT-Thread學習筆記】使用memwatch排除內(nèi)存泄露
    的頭像 發(fā)表于 07-30 14:01 ?3815次閱讀
    【<b class='flag-5'>RT-Thread</b><b class='flag-5'>學習</b><b class='flag-5'>筆記</b>】用memwatch排除內(nèi)存泄露

    RT-Thread文檔_RT-Thread 簡介

    RT-Thread文檔_RT-Thread 簡介
    發(fā)表于 02-22 18:22 ?5次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> 簡介

    RT-Thread文檔_RT-Thread SMP 介紹與移植

    RT-Thread文檔_RT-Thread SMP 介紹與移植
    發(fā)表于 02-22 18:31 ?9次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> SMP 介紹與移植

    基于RT-Thread Studio學習

    前期準備:從官網(wǎng)下載 RT-Thread Studio,弄個賬號登陸,開啟rt-thread學習之旅。
    的頭像 發(fā)表于 05-15 11:00 ?6600次閱讀
    基于<b class='flag-5'>RT-Thread</b> Studio<b class='flag-5'>學習</b>