嵌入式開發 RTOS

2021-10-10 03:20:28 字數 885 閱讀 8703

對於較為複雜的應用開發,還是使用rtos比較好。rtos一般都整合了執行緒管理、執行緒同步、共享資源保護等功能模組。使用rtos能夠方便的管理多個功能模組,並且發揮cpu的最大資源使用(無時無刻的進行著任務的切換與執行)。

名稱簡述

rt-thread

國產開源rtos,生態元件很多(gui、ide等),文件豐富,對於國內開發者比較友好,支援posix介面 官網

freertos

比較經典開源的rtos,使用很廣泛,元件較少

ucos

早期的商用付費rtos

rtos絕大部分的**實現主要圍繞在任務的切換以及最高等級任務的查詢,任務的切換主要實對任務上下文(一些不能自動儲存的暫存器)的儲存與恢復,儲存的位置就是建立任務時的堆疊。而任務切換的時間就是由核心的心跳——定時器確定的,每次心跳來臨時,核心就會查詢有沒有高優先順序任務就緒(一般任務是由乙個鍊錶串起來的),如果有則進行切換。對於同等級的任務,會進行同等時間片執行切換,也就是說a執行一段時間b執行一段時間(一般同等級的任務位於同乙個表)。

使用rtos注意防止死鎖,對於多個任務使用同乙個鎖時要即時釋放鎖

優先順序反轉是高優先順序任務等待資源時產生的

任務建立時要考慮記憶體資源的分配,任務裡一定要有釋放執行權操作

互斥鎖用於資源共享,一般具有優先順序繼承功能

訊號線用於任務間資源同步

rtos具體使用要考慮實際開發是否需要,畢竟rtos對資源具有一定的占用,簡單的程式開發使用狀態機足矣。沒有最好的,只有最合適的,不然linux早就全部占領嵌入式開發了。

嵌入式開發

經常會有人說嵌入式開發,嵌入式開發千差萬別,我總體上分為4個等級 微電子開發 rtos開發 指令碼開發 富應用開發 這一類產品行為比較固定,比如說電視遙控器,遙控汽車,電飯煲,恆溫燒水壺,溫濕度感測器,智慧型門鎖等。這些裝置行為都比較簡單,通過按鈕可以設定系統功能和行為。量不大,經常會選用flash...

初識嵌入式 嵌入式開發概述

1 什麼是嵌入式技術 1 嵌入式軟體與非嵌入式軟體的區別?答 嵌入式軟體是結合作業系統之上做的開發 非嵌入式軟體是做的裸機開發。裸機 沒有作業系統 2 嵌入式開發與微控制器開發的區別?答 區別 是否有作業系統。拓展 答 優點 解決了軟體的移植性 解決了開發人員的能力的劃分問題。提供了豐富的網路協議 ...

嵌入式系統 實時作業系統 RTOS

一 rtos中的基本概念 背景 rtos具有的功能 作業系統中的程序與執行緒 二 嵌入式作業系統的主要種類 1 uc os ii 2 linux 作業系統 3 vxworks 4 wince os 作業系統,operating system 是嵌入式系統中的靈魂,是其軟體系統中的重要組成部分,嵌入式...