无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

2.實時性

2023-08-28 18:15 作者:踏星赴夢  | 我要投稿

1.UCOSIII保證實時性的一個點:為了實現(xiàn)中斷和任務的同步,需要在中斷中進行post操作,UCOSIII為了減少中斷執(zhí)行的時間,提高系統(tǒng)中斷響應的實時性,設計了OS_TickTaskOS_IntQTask,這樣原本需要在中斷里進行一些較為耗時的操作就被放到了任務級代碼中去。

1.1時鐘節(jié)拍任務:OS_TickTask()

屬于UCOSIII自帶的5個系統(tǒng)任務之一

  • 空閑任務:OS_IdleTask() -->必須的

  • 時鐘節(jié)拍任務:OS_TickTask() -->必須的

  • 統(tǒng)計任務:OS_StatTask() ?-->可選的

  • 定時任務:OS_TmrTask() -->可選的

  • 中斷服務管理任務:OS_IntQTask() 可選的

該任務由系統(tǒng)自動創(chuàng)建,其任務優(yōu)先級為OSCfg_TickTaskPrio,時鐘節(jié)拍任務的優(yōu)先級盡量高一些,一般設置為1(值越低,優(yōu)先級越高),事實上,它的優(yōu)先級應該設置比重要任務的優(yōu)先級稍低。

時鐘節(jié)拍任務的作用:OS的節(jié)拍任務,該任務等待信號量的到來,并執(zhí)行OS_TickListUpdate()函數(shù),對需要延時的任務進行更新,將延時時間到達的任務放回就緒列表中,信號量由節(jié)拍函數(shù)OS_TimeTick()發(fā)出,或者由中斷延時函數(shù)發(fā)送

1.2中斷服務管理任務:OS_IntQTask()

  • 屬于UCOSIII自帶的5個系統(tǒng)任務之一

  • 在配置文件中可以使能中斷服務管理任務,使能后系統(tǒng)會自動創(chuàng)建中斷服務管理任務

  • 中斷服務管理任務的作用:該任務負責“延遲”在ISR(中斷服務程序)中調(diào)用系統(tǒng)post服務函數(shù)的行為。

  • 中斷服務管理任務的優(yōu)先級永遠是最高的:0

怎么理解“該任務負責“延遲”在ISR(中斷服務程序)中調(diào)用系統(tǒng)post服務函數(shù)的行為”這句話:

原因1:在UCOS中通過關(guān)閉中斷任務調(diào)度器上鎖兩種方式來管理臨界段代碼,如果使用任務調(diào)度器上鎖的方式來管理臨界段代碼的話,那么在中斷服務函數(shù)中調(diào)用“post類函數(shù)”就不允許操作任務就緒表、等待表等系統(tǒng)內(nèi)部數(shù)據(jù)解結(jié)構(gòu)(這里是規(guī)定)。

原因2:當ISR中調(diào)用UCOS提供的“post”類函數(shù)時,要發(fā)送的數(shù)據(jù)和發(fā)送的目的地都會存入一個特別的緩沖隊列中--“holding”隊列,當所有嵌套中斷結(jié)束時,UCOSIII會執(zhí)行任務切換,運行中斷服務管理任務(該任務優(yōu)先級最高),中斷服務管理任務會將holding隊列中存放的任務重新發(fā)給相應的任務。目的:減少中斷關(guān)閉的時間

如果沒有這個中斷服務管理任務,在ISR中還要執(zhí)行把任務從等待列表中刪除,并把任務放入就緒鏈表中,以及其他的一些耗時操作。

2.FreeRTOS中沒有這樣的設計

從這一點上,可以看出UCOSIII的實時性要比FreeRTOS好。





2.實時性的評論 (共 條)

分享到微博請遵守國家法律
龙口市| 铜梁县| 玛曲县| 开原市| 望都县| 出国| 黑龙江省| 文昌市| 永宁县| 额济纳旗| 沛县| 台州市| 泉州市| 灵山县| 米易县| 井研县| 沙坪坝区| 两当县| 太仆寺旗| 马尔康县| 高要市| 庄浪县| 晋州市| 南靖县| 鄂托克旗| 保德县| 泸溪县| 温州市| 株洲县| 西丰县| 瓦房店市| 平阳县| 偏关县| 涿鹿县| 类乌齐县| 汨罗市| 岢岚县| 永德县| 进贤县| 苗栗县| 封丘县|