張飛軟硬開源基于STM32 BLDC直流無刷電機驅動器開發視頻套件,??戳此立搶??

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

電子發燒友網 ? 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 可以將多個內存堆 “粘貼” 在一起,讓用戶操作起來像是在操作一個內存堆。

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

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

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

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

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

收藏 人收藏
分享:

評論

相關推薦

STM32入門100步

創新的洋桃教學視頻集合,杜洋主講的百集視頻,以多組視頻針對不同程度的學習者,0基礎和會51單片機的學習者會看到不同的視頻
發表于 10-23 00:00 ? 95936次 閱讀
STM32入門100步

互聯網進入下半場,工業互聯網成為新風口

自2012年“工業互聯網”概念首次提出,到今年“工業互聯網”被寫入《政府工作報告》,我國工業互聯網建....
的頭像 墨記 發表于 08-07 18:27 ? 427次 閱讀
互聯網進入下半場,工業互聯網成為新風口

智慧家庭開始進入真實生活了嗎

物聯網是新一代信息技術的集成和應用的集合體,在智慧家庭領域還在漸入普及的過程,物聯網技術的應用對于經....
發表于 08-07 17:53 ? 23次 閱讀
智慧家庭開始進入真實生活了嗎

物聯網時代的生活體驗會是怎樣的

智能家居最基本的目標,也是唯一的目的就是為人們提供一個舒適安全、高效便捷的生活環境。
發表于 08-07 17:45 ? 31次 閱讀
物聯網時代的生活體驗會是怎樣的

物聯網的要求有哪些

基于物聯網的設備連接仍處于起步階段。這意味著,隨著新應用程式的涌現,顯著提高了微控制器(MCU)系統....
發表于 08-07 17:40 ? 28次 閱讀
物聯網的要求有哪些

工業物聯網怎樣領導一場節能的革命

工業互聯網將為工業企業提供一個集合的架構,將智能機器、傳感器和高級分析功能融于一爐。
發表于 08-07 17:34 ? 15次 閱讀
工業物聯網怎樣領導一場節能的革命

數據處理首先要解決什么問題

如今物聯網的應用越來越廣泛,但需要具有企業的視角。這意味著垂直行業應用程序、開發生態系統、產品設計、....
發表于 08-07 16:51 ? 24次 閱讀
數據處理首先要解決什么問題

為什么很多企業都不愿意采用物聯網解決方案

這聽起來像是一個老問題,但在我們的技術領域仍然存在大量煙霧,并且不缺乏騙人的“萬能藥”。 這自然會引....
發表于 08-07 16:48 ? 15次 閱讀
為什么很多企業都不愿意采用物聯網解決方案

物聯網的部署應該避開哪些問題

隨著物聯網時代數據量的爆炸式增長,邊緣計算獲得了巨大的推動力,不難證明,在云或數據中心中處理和存儲所....
發表于 08-07 16:38 ? 19次 閱讀
物聯網的部署應該避開哪些問題

物聯網可以為電信公司的業務帶來哪些好處

農業、零售和公用事業等多個業務領域正在實施物聯網解決方案,以提高工作場所的效率和安全性。同樣,物聯網....
發表于 08-07 16:36 ? 20次 閱讀
物聯網可以為電信公司的業務帶來哪些好處

物聯網還面臨著哪些安全和風險挑戰

互聯網不再只是一個由服務器、路由器、交換機、臺式電腦、筆記本電腦、平板電腦和智能手機等傳統計算設備組....
發表于 08-07 16:34 ? 60次 閱讀
物聯網還面臨著哪些安全和風險挑戰

網聯汽車的發展現在最需要的是什么

隨著物聯網、云計算、AI、道路交通等行業加速跨界融合變革,發展智能網聯汽車已成為各國共識。
發表于 08-07 15:24 ? 99次 閱讀
網聯汽車的發展現在最需要的是什么

stm32TFT畫出64個格子,觸屏得到坐標值,怎么把它換算成二進制數,再算成十六進制數

TFT畫出64個格子,觸屏得到坐標值,怎么把它換算成二進制數,再算成十六進制數 #include "face.h" uint16_t x,y,a,b; ...
發表于 08-07 15:08 ? 106次 閱讀
stm32TFT畫出64個格子,觸屏得到坐標值,怎么把它換算成二進制數,再算成十六進制數

邊緣計算的潛力到底有多大

隨著物聯網和工業互聯網的蓬勃發展,數據的處理及安全等成為重要問題。
發表于 08-07 14:52 ? 20次 閱讀
邊緣計算的潛力到底有多大

調試器能用SWD下載,為什么有些調試器還要帶一個虛擬串口?

新手請教一下,淘寶買了個stlink能 運行SWD和JTAG,SWD能下載。 為什么有些其它的調試器在支持SWD的情況下還要帶...
發表于 08-07 11:46 ? 127次 閱讀
調試器能用SWD下載,為什么有些調試器還要帶一個虛擬串口?

物聯網系統怎樣選擇合適的傳感器

隨著物聯網(IoT)邊緣計算側能力和網絡連接能力的提升,終端產品越來越可以自主進行一些決策性工作。
發表于 08-07 10:37 ? 23次 閱讀
物聯網系統怎樣選擇合適的傳感器

想精通STM32開發?這些資料不容錯過

本資料是STM32開發資料的集合,包含以下內容,希望對大家有所幫助,今天也要努力學習哦! 積分不夠?加入VIP特權...
發表于 08-07 10:26 ? 147次 閱讀
想精通STM32開發?這些資料不容錯過

NB-IoT與LoRa誰可以在物聯網領域取得勝利

NB-IoT和LoRa不僅僅需要產品的創新,更需要項目應用的創新。
發表于 08-07 10:18 ? 44次 閱讀
NB-IoT與LoRa誰可以在物聯網領域取得勝利

現在面臨的物聯網風險有哪些

物聯網旨在為日常流程帶來效率,然而,物聯網仍然面臨著諸多安全和風險挑戰,而且未來還會出現更多。
發表于 08-07 10:13 ? 98次 閱讀
現在面臨的物聯網風險有哪些

All in AI的聯發科成功開拓了AIoT及智能汽車市場

2019年7月10日,聯發科技在深圳舉辦首屆AI合作伙伴大會,正式發布了全新的針對AIoT領域的i7....
的頭像 芯智訊 發表于 08-07 09:50 ? 1810次 閱讀
All in AI的聯發科成功開拓了AIoT及智能汽車市場

NB-IoT技術在智慧消防產業中的應用介紹

中國電信是物聯網領域的重要參與者,建設大量NB-IoT基站,覆蓋全國。中國電信也一直致力于NB-Io....
發表于 08-07 09:02 ? 96次 閱讀
NB-IoT技術在智慧消防產業中的應用介紹

全球3GPP更新5G標準R15版本的時間表正式公布

Main drop(主交付):即支持5G SA(獨立組網)模式,系統架構選項采用Option 2,對....
發表于 08-07 08:59 ? 25次 閱讀
全球3GPP更新5G標準R15版本的時間表正式公布

NB-IoT與eMTC和LoRa三者之間誰會獲得物聯網的擁抱

NB-IoT作為一項應用于低速率業務中的技術,具有強鏈接、高覆蓋、低功耗和低成本的特點。如在同一基站....
發表于 08-07 08:44 ? 32次 閱讀
NB-IoT與eMTC和LoRa三者之間誰會獲得物聯網的擁抱

城市怎樣智慧管理

數據獲取后,一是構建3D信息化模型(BIM),數據直觀展示;二是數據集合置于云端,進行集群化管理。
發表于 08-07 08:43 ? 10次 閱讀
城市怎樣智慧管理

RSL10傳感器開發套件怎么助力物聯網?

傳感器是物聯網(IoT)的關鍵構建塊,促成IoT的各種應用,包括可穿戴設備、移動醫療、工業自動化、智能家居、智能樓宇等。對于...
發表于 08-07 08:43 ? 203次 閱讀
RSL10傳感器開發套件怎么助力物聯網?

視覺物聯網方案的進展如何?

物聯網(IoT)將涉及大量的邊緣設備,需要由FOG節點將處理后的數據進行聚合,進而發送到云/數據中心,然后從云/數據中心再發送...
發表于 08-07 08:42 ? 15次 閱讀
視覺物聯網方案的進展如何?

基于51單片機的物聯網溫度計和遠程開關設計

假設你是一個設計“農用電子溫度計”的工程師。一個養雞場希望探索雞舍溫度與產蛋量的關系。...
發表于 08-07 08:08 ? 18次 閱讀
基于51單片機的物聯網溫度計和遠程開關設計

使用STM32單片機驅動OV7670進行圖像的采集的程序和工程文件免費下載

本資料包含了一個工程文件,利用STM32單片機驅動OV7670進行圖像的采集。
發表于 08-07 08:00 ? 5次 閱讀
使用STM32單片機驅動OV7670進行圖像的采集的程序和工程文件免費下載

STM32F427xx和STM32F429xx微控制器的數據手冊免費下載

STM32F427xx和STM32F429xx設備基于高性能ARM?Cortex?-M4 32位RI....
發表于 08-07 08:00 ? 10次 閱讀
STM32F427xx和STM32F429xx微控制器的數據手冊免費下載

STM32F107微控制器片內外設

本節介紹STM32F107微控制器的主要片內外設,著重介紹10/100M以太網接口、CAN總線接口和RS485總線接口。...
發表于 08-07 07:47 ? 8次 閱讀
STM32F107微控制器片內外設

淺析工業物聯網

物聯網(IoT)越來越多地被視為“云端加邊緣”范式中計算的下一步發展,越來越多的設備正在連接到互聯網。計算能力正在集成到這...
發表于 08-07 06:57 ? 14次 閱讀
淺析工業物聯網

SimpleLink WiFi設備有什么優點?

您是否嘗試過將您的智能物聯網(IoT)設備接入繁忙的Wi-Fi?網絡?盡管這使得它們絲毫發揮不了作用,因為網速和帶寬令人荒謬地...
發表于 08-07 06:40 ? 18次 閱讀
SimpleLink WiFi設備有什么優點?

物聯網系統的組成

   物聯網是與云計算相伴而生的,事實上,正是物聯網的概念幫我弄清了對云計算的工作定義。物聯網是一個由三個不同的子...
發表于 08-07 06:13 ? 23次 閱讀
物聯網系統的組成

從打壓到認可,LoRa為何能夠實現逆襲

低功耗廣域網絡(LPWAN)技術被認為是為物聯網而生的新興網絡連接技術,因為其傳輸距離遠、功耗低、連....
的頭像 RTThread物聯網操作系統 發表于 08-06 18:23 ? 357次 閱讀
從打壓到認可,LoRa為何能夠實現逆襲

物聯網時代怎樣和孩子一起共享

憑借物聯網中的所有智能技術,她將能夠實現我從未想到的技術進步。
發表于 08-06 17:48 ? 17次 閱讀
物聯網時代怎樣和孩子一起共享

如何樹立正確的觀念去實施工業物聯網

云是大多數物聯網或工業物聯網討論中的熱門話題。毫無疑問,云有它的好處,并在工業物聯網市場中有著重要的....
發表于 08-06 16:06 ? 20次 閱讀
如何樹立正確的觀念去實施工業物聯網

物聯網技術用于物流領域可以對物流環節的運作產生積影響

物聯網的還是互聯網,但它是新代信息網絡的組成部分,也是在互聯網基礎上的延伸。定義為:通過射頻識別技術....
發表于 08-06 15:59 ? 21次 閱讀
物聯網技術用于物流領域可以對物流環節的運作產生積影響

物聯網解決方案的好處和常見用途有哪些

千年蟲帶來了新千年的曙光。在上世紀90年代,人們對世界的未來以及數字技術在其中的作用進行了大量猜測,....
發表于 08-06 15:55 ? 23次 閱讀
物聯網解決方案的好處和常見用途有哪些

零售業與物聯網的結合會有什么反應

當我們談論物聯網時,它是用來描述機器對機器連接的術語,硬件設備和傳感器在設備和位置上相互交互。
發表于 08-06 15:54 ? 27次 閱讀
零售業與物聯網的結合會有什么反應

智慧城市的物聯網技術將會怎樣發展

智慧城市物聯網技術中發展最快是電動汽車充電樁、微電網、智能垃圾管理、環境傳感器、智能停車場和智能路燈....
發表于 08-06 15:48 ? 31次 閱讀
智慧城市的物聯網技術將會怎樣發展

智能建筑迎來了怎樣的新機遇

智能建筑和物聯網分析已經改變了這種狀態,物業管理者們開始相信新技術的應用可以為建筑提供更高質量的管理....
發表于 08-06 15:40 ? 15次 閱讀
智能建筑迎來了怎樣的新機遇

智能城市信息安全面臨哪些威脅

智慧城市應用大部分是在公網上運行,采集并保存著城市運行和管理的海量數據。
發表于 08-06 15:33 ? 22次 閱讀
智能城市信息安全面臨哪些威脅

大數據時代的信息安全怎樣來保證

物聯網信息安全是物聯網技術和產業發展的重要基礎,信息安全沒有可靠的保障,物聯網技術很難實現規模化的商....
發表于 08-06 15:21 ? 28次 閱讀
大數據時代的信息安全怎樣來保證

哪些因素影響了物聯網的普及

如果價格問題不解決,互通性不解決,安全和隱私問題不解決,物聯網是行不通的。
發表于 08-06 15:16 ? 40次 閱讀
哪些因素影響了物聯網的普及

意法半導體宣布ST-TouchGFX開啟免費

意法半導體宣布STM32開發者可以免費使用TouchGFX進行高品質的GUI設計。
的頭像 嵌入式資訊精選 發表于 08-06 15:11 ? 69次 閱讀
意法半導體宣布ST-TouchGFX開啟免費

智能安防現在處于怎樣的狀態

物聯網技術與智能化技術正在深度融合,加快行業的智能化發展,促使行業需求在應用層上落地。
發表于 08-06 15:09 ? 35次 閱讀
智能安防現在處于怎樣的狀態

龍芯“硬核錄取通知書”遭網友誤噴被當成當年造假的漢芯

中科院大學在給新生通知書中附帶了一顆龍芯處理器,并奉上了一句“讀懂更多,看得更遠!”新生寄語。這份真....
的頭像 芯智訊 發表于 08-06 15:08 ? 127次 閱讀
龍芯“硬核錄取通知書”遭網友誤噴被當成當年造假的漢芯

智能安防怎樣實現移動化

物聯網就是物物相連的互聯網,物聯網通過智能感知、識別技術與普適計算等通信感知技術,廣泛應用于網絡的融....
發表于 08-06 15:04 ? 33次 閱讀
智能安防怎樣實現移動化

智能安防加入傳感器會怎樣

隨著智慧城市的興起,車流量雷達、2D/3D多目標跟蹤雷達也逐漸普及起來。
發表于 08-06 14:57 ? 34次 閱讀
智能安防加入傳感器會怎樣

怎樣利用物聯網來防止把孩子鎖在車里

在科技的快速發展之下,汽車制造商已推出了許多有用的改良。
發表于 08-06 14:47 ? 30次 閱讀
怎樣利用物聯網來防止把孩子鎖在車里

物聯網安全的漏洞有哪些

物聯網為人類生活帶來很大的方便,但也成為很大的安全威脅。
發表于 08-06 14:46 ? 31次 閱讀
物聯網安全的漏洞有哪些

物聯網卡的應用場景有哪些

隨著技術的成熟發展,會有越來越多的實際應用場景,功能體驗也會越來越好。
發表于 08-06 14:14 ? 22次 閱讀
物聯網卡的應用場景有哪些

物聯網未來的趨勢將會是怎樣的

物聯擁有業界最完整的專業物聯產品系列,覆蓋從傳感器、控制器到云計算的各種應用。
發表于 08-06 14:11 ? 125次 閱讀
物聯網未來的趨勢將會是怎樣的

我國智能網聯汽車產業尚處發展初期

近日,交通運輸部印發《數字交通發展規劃綱要》(以下簡稱《綱要》),旨在貫徹落實黨中央、國務院關于促進....
的頭像 物聯網技術 發表于 08-06 14:06 ? 244次 閱讀
我國智能網聯汽車產業尚處發展初期

物聯網傳感器你了解嗎

物聯網設備都是關于收集數據、處理數據并產生適當的響應。
發表于 08-06 14:06 ? 90次 閱讀
物聯網傳感器你了解嗎

真實的物聯網應用是怎樣的

物聯網將不斷迭代、改進并持續構建,并將互聯網上的硬件和軟件結合,以創造一個更智能的世界。
發表于 08-06 11:37 ? 99次 閱讀
真實的物聯網應用是怎樣的

5G在IoT安全中的作用

物聯網安全,是挑戰,也是機遇!
的頭像 嵌入式資訊精選 發表于 08-06 11:37 ? 379次 閱讀
5G在IoT安全中的作用

AI+IoT組合將創新翻轉嵌入式系統

近年來,隨著科技進步,物聯網快速發展,嵌入式技術益趨普及,應用產品不斷滲透到人們的日常生活中,從隨身....
發表于 08-06 11:25 ? 50次 閱讀
AI+IoT組合將創新翻轉嵌入式系統

電信業被物聯網怎樣影響

在電信公司實施物聯網(IOT)可以提供業務分析、確保遠程基站的安全以及監控設備。
發表于 08-06 11:15 ? 68次 閱讀
電信業被物聯網怎樣影響

騰訊云物聯網開發平臺:多行業實際場景實踐,萬物智聯近在眼前

騰訊云重磅推出一站式物聯網開發平臺IoT Explorer。
的頭像 IEEE電氣電子工程師學會 發表于 08-06 10:50 ? 369次 閱讀
騰訊云物聯網開發平臺:多行業實際場景實踐,萬物智聯近在眼前

STM32單片機的快速傅里葉變換代碼說明

 FFT為Fast Fourier Transformation,即快速傅里葉變換,本項目中,FFT....
發表于 08-06 08:00 ? 13次 閱讀
STM32單片機的快速傅里葉變換代碼說明
北京赛pk10盛世直播 快乐双彩开奖结果时间 长春麻将打牌技巧 澳门六合彩 六肖公式规律 全民内蒙古麻将技巧 股票涨跌停计算 扑克牌游戏大全 天津快乐10分开奖直播 3d试机号对应码对照表 球探篮球 内蒙古时时彩走势全图 排列5专家预测 568彩票安全吗 澳洲幸运5直播天天计划 喜乐彩开奖号码信息 福彩22选5东湖社区