色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

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

3天內不再提示

如何對RT-Thread內核有基本的了解?

lPCU_elecfans ? 來源:未知 ? 作者:肖冰 ? 2019-07-19 10:12 ? 次閱讀
內核基礎

內核的連載內容包括 RT-Thread 內核基礎:內核簡介、系統的啟動流程及內核配置的部分內容,以上內容都是為后面的章節奠定基礎。本章內容將分為3篇連載!

RT-Thread 內核的簡單介紹,從軟件架構入手講解實時內核的組成與實現,這部分給初學者引入一些 RT-Thread 內核相關的概念與基礎知識,讓初學者對內核有初步的了解。學完本章內容以后,讀者將會對 RT-Thread 內核有基本的了解,知道內核的組成部分、系統如何啟動、內存分布情況以及內核配置方法。

RT-Thread 內核介紹

內核是操作系統最基礎也是最重要的部分。下圖為 RT-Thread 內核架構圖,內核處于硬件層之上,內核部分包括內核庫、實時內核實現。

內核庫是為了保證內核能夠獨立運行的一套小型的類似 C 庫的函數實現子集。這部分根據編譯器的不同自帶 C 庫的情況也會有些不同,當使用 GNU GCC 編譯器時,會攜帶更多的標準 C 庫實現。

實時內核的實現包括:對象管理、線程管理及調度器、線程間通信管理、時鐘管理及內存管理等等,內核最小的資源占用情況是 3KB ROM,1.2KB RAM

線程調度

線程是 RT-Thread 操作系統中最小的調度單位,線程調度算法是基于優先級的全搶占式多線程調度算法,即在系統中除了中斷處理函數、調度器上鎖部分的代碼和禁止中斷的代碼是不可搶占的之外,系統的其他部分都是可以搶占的,包括線程調度器自身。支持 256 個線程優先級(也可通過配置文件更改為最大支持 32 個或 8 個線程優先級,針對 STM32 默認配置是 32 個線程優先級),0 優先級代表最高優先級,最低優先級留給空閑線程使用;同時它也支持創建多個具有相同優先級的線程,相同優先級的線程間采用時間片的輪轉調度算法進行調度,使每個線程運行相應時間;另外調度器在尋找那些處于就緒狀態的具有最高優先級的線程時,所經歷的時間是恒定的,系統也不限制線程數量的多少,線程數目只和硬件平臺的具體內存相關。

線程管理將在后面的《線程管理》章節詳細介紹。

時鐘管理

RT-Thread 的時鐘管理以時鐘節拍為基礎,時鐘節拍是 RT-Thread 操作系統中最小的時鐘單位。RT-Thread 的定時器提供兩類定時器機制:第一類是單次觸發定時器,這類定時器在啟動后只會觸發一次定時器事件,然后定時器自動停止。第二類是周期觸發定時器,這類定時器會周期性的觸發定時器事件,直到用戶手動的停止定時器否則將永遠持續執行下去。

另外,根據超時函數執行時所處的上下文環境,RT-Thread 的定時器可以設置為 HARD_TIMER 模式或者 SOFT_TIMER 模式。

通常使用定時器定時回調函數(即超時函數),完成定時服務。用戶根據自己對定時處理的實時性要求選擇合適類型的定時器。

定時器將在后面的《時鐘管理》章節展開講解。

線程間同步

RT-Thread 采用信號量、互斥量與事件集實現線程間同步。線程通過對信號量、互斥量的獲取與釋放進行同步;互斥量采用優先級繼承的方式解決了實時系統常見的優先級翻轉問題。線程同步機制支持線程按優先級等待或按先進先出方式獲取信號量或互斥量。線程通過對事件的發送與接收進行同步;事件集支持多事件的 “或觸發” 和“與觸發”,適合于線程等待多個事件的情況。

信號量、互斥量與事件集的概念將在后面的《線程間同步》章節詳細介紹。

線程間通信

RT-Thread 支持郵箱和消息隊列等通信機制。郵箱中一封郵件的長度固定為 4 字節大小;消息隊列能夠接收不固定長度的消息,并把消息緩存在自己的內存空間中。郵箱效率較消息隊列更為高效。郵箱和消息隊列的發送動作可安全用于中斷服務例程中。通信機制支持線程按優先級等待或按先進先出方式獲取。

郵箱和消息隊列的概念將在后面的《線程間通信》章節詳細介紹。

內存管理

RT-Thread 支持靜態內存池管理及動態內存堆管理。當靜態內存池具有可用內存時,系統對內存塊分配的時間將是恒定的;當靜態內存池為空時,系統將申請內存塊的線程掛起或阻塞掉 (即線程等待一段時間后仍未獲得內存塊就放棄申請并返回,或者立刻返回。等待的時間取決于申請內存塊時設置的等待時間參數),當其他線程釋放內存塊到內存池時,如果有掛起的待分配內存塊的線程存在的話,則系統會將這個線程喚醒。

動態內存堆管理模塊在系統資源不同的情況下,分別提供了面向小內存系統的內存管理算法及面向大內存系統的SLAB 內存管理算法。福利:在電子發燒友網公眾號回復資料,免費領取一份模電資料集

還有一種動態內存堆管理叫做 memheap,適用于系統含有多個地址可不連續的內存堆。使用 memheap 可以將多個內存堆 “粘貼” 在一起,讓用戶操作起來像是在操作一個內存堆。

內存管理的概念將在后面的《內存管理》章節展開講解。

I/O 設備管理

RT-Thread 將 PIN、I2C、SPI、USBUART 等作為外設設備,統一通過設備注冊完成。實現了按名稱訪問的設備管理子系統,可按照統一的 API 界面訪問硬件設備。在設備驅動接口上,根據嵌入式系統的特點,對不同的設備可以掛接相應的事件。當設備事件觸發時,由驅動程序通知給上層的應用程序。

I/O 設備管理的概念將在后面的《設備模型》及《通用設備》章節展開講解。

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

    關注

    2928

    文章

    46017

    瀏覽量

    389352
  • STM32
    +關注

    關注

    2290

    文章

    11018

    瀏覽量

    362963
  • RT-Thread
    +關注

    關注

    32

    文章

    1376

    瀏覽量

    41602

原文標題:從0-1帶你入門物聯網操作系統(3)——內核介紹

文章出處:【微信號:elecfans,微信公眾號:電子發燒友網】歡迎添加關注!文章轉載請注明出處。

收藏 3人收藏
  • cldpj1234561

評論

相關推薦
熱點推薦

RT-Thread記錄(二、RT-Thread內核啟動流程)

在前面我們RT-Thread Studio工程基礎之上講一講RT-Thread內核啟動流程.
的頭像 發表于 06-20 00:30 ?5548次閱讀
<b class='flag-5'>RT-Thread</b>記錄(二、<b class='flag-5'>RT-Thread</b><b class='flag-5'>內核</b>啟動流程)

RT-Thread內核對象管理介紹

繼續研究RT-Thread 最基礎,最重要的概念:內核對象。
發表于 06-02 09:48 ?521次閱讀
<b class='flag-5'>RT-Thread</b><b class='flag-5'>內核</b>對象管理介紹

16天入門RT-Thread內核,快速上手無壓力!

內核的組成與實現,這部分給初學者引入一些 RT-Thread 內核相關的概念與基礎知識,讓初學者對內核初步的
發表于 08-20 16:39

RT-Thread快速入門之了解內核啟動流程

1、了解RT-Thread內核的啟動流程  內核是操作系統最基礎也是最重要的部分。從本文開始進入 RT-Thread
發表于 09-05 17:01

RT-Thread 內核學習筆記 - 理解defunct僵尸線程

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

RT-Thread 內核學習筆記 - 設備模型rt_device的理解

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

RT-Thread 內核學習筆記 - 內核對象鏈表結構深入理解

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

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

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

RT-Thread 內核學習筆記 - 內核對象操作API

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

大佬帶你理解RT-Thread內核并上手實踐

內核是操作系統最重要的部分,學習RT-Thread也是從最基本的內核開始。 ? RT-Thread內核要怎么學?編者覺得首先應該是從軟件架構
發表于 06-30 17:10 ?1566次閱讀

RT-Thread文檔_內核基礎

RT-Thread文檔_內核基礎
發表于 02-22 18:28 ?1次下載
<b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>內核</b>基礎

RT-Thread文檔_內核移植

RT-Thread文檔_內核移植
發表于 02-22 18:31 ?4次下載
<b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>內核</b>移植

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

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

如何深入理解RT-Thread內核并上手實踐,看完這篇答案了!

內核是操作系統最重要的部分,學習RT-Thread也是從最基本的內核開始。RT-Thread內核要怎么學?編者覺得首先應該是從軟件架構入手,
的頭像 發表于 06-27 09:36 ?2967次閱讀
如何深入理解<b class='flag-5'>RT-Thread</b><b class='flag-5'>內核</b>并上手實踐,看完這篇<b class='flag-5'>有</b>答案了!

RT-Thread v5.0.2 發布

://github.com/RT-Thread/rt-thread/releases/tag/v5.0.2 RT-Thread 迎來了全新的版本 v5.0.2,自 v5.0.0?版本發布以來,
的頭像 發表于 10-10 18:45 ?1875次閱讀
<b class='flag-5'>RT-Thread</b> v5.0.2 發布
主站蜘蛛池模板: 午夜小视频免费观看 | 牛牛免费视频 | 国产精品自在在线午夜蜜芽tv在线 | 麻豆精品人妻一区二区三区蜜桃 | 日本久久精品免视看国产成人 | 无敌在线视频观看免费 | 韩国三级久久精品 | 久久久无码精品亚洲A片猫咪 | 俄罗斯美女z0z0z0在线 | 寻找最美乡村教师颁奖晚会 | 精品网站一区二区三区网站 | 美女穿丝袜被狂躁动态图 | 久久人妻AV一区二区软件 | 久久精品成人免费看 | 中国老太太xxx | 欲香欲色天天综合和网 | 特黄特色大片免费播放器9 特黄特黄aaaa级毛片免费看 | 国产精品视频一区二区猎奇 | 国产精品视频yy9099 | 久久水蜜桃亚洲AV无码精品偷窥 | 成 人 免费 黄 色 网站无毒下载 | 亚洲视频免费 | 亚洲欧洲日产国码中学 | 最新无码国产在线视频2020 | 美女脱光app | 2020最新无码国产在线视频 | 免费看国产曰批40分钟 | 吃春药后的女教师 | 美国特级成人毛片 | 99久久久国产精品免费蜜臀 | 三级网址在线 | 欧美亚洲日韩自拍高清中文 | 国产亚洲欧洲日韩在线三区 | 西西人体大胆牲交PP6777 | 国产精品美女WWW爽爽爽视频 | 99久久亚洲精品日本无码 | 91久久线看在观草草青青 | 特黄特色大片免费播放器9 特黄特黄aaaa级毛片免费看 | 午夜福利免费视频921000电影 | 日本国产黄色片 | 24小时日本在线观看片免费 |

電子發燒友

中國電子工程師最喜歡的網站

  • 2931785位工程師會員交流學習
  • 獲取您個性化的科技前沿技術信息
  • 參加活動獲取豐厚的禮品