精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

FreeRTOS中任務狀態與任務優先級

麥辣雞腿堡 ? 來源:嵌入式Linux系統開發 ? 作者:嵌入式Linux系統開 ? 2023-09-28 11:10 ? 次閱讀

任務狀態

FreeRTOS 中的任務永遠處于下面幾個狀態中的某一個:

● 運行態

當一個任務正在運行時,那么就說這個任務處于運行態,處于運行態的任務就是當前正在使用處理器的任務。如果使用的是單核處理器的話那么不管在任何時刻永遠都只有一個任務處于運行態。

● 就緒態

處于就緒態的任務是那些已經準備就緒(這些任務沒有被阻塞或者掛起),可以運行的任務,但是處于就緒態的任務還沒有運行,因為有一個同優先級或者更高優先級的任務正在運行!

● 阻塞態

如果一個任務當前正在等待某個外部事件的話就說它處于阻塞態,比如說如果某個任務調用了函數
vTaskDelay()的話就會進入阻塞態,直到延時周期完成。任務在等待隊列、信號量、事件組、通知或互斥信號量的時候也會進入阻塞態。任務進入阻塞態會有一個超時時間,當超過這個超時時間任務就會退出阻塞態,即使所等待的事件還沒有來臨!

● 掛起態

像阻塞態一樣,任務進入掛起態以后也不能被調度器調用進入運行態,但是進入掛起態的任務沒有超時時間。任務進入和退出掛起態通過調用函數vTaskSuspend()和 xTaskResume()。任務狀態之間的轉換如圖所示:

圖片

4、任務優先級

每 個 任 務 都 可 以 分 配 一 個 從 0~(configMAX_PRIORITIES-1) 的 優 先 級
,configMAX_PRIORITIES 在文件 FreeRTOSConfig.h 中有定義,一般不超過 32。

優先級數字越低表示任務的優先級越低,0 的優先級最低,configMAX_PRIORITIES-1 的優先級最高。空閑任務的優先級最低,為0。(注意和中斷的優先級區分,任務和中斷不一樣,中斷一般是數字越小優先級越大)

當宏 configUSE_TIME_SLICING 定義為 1 的時候多個任務可以共用一個優先級,數量不限。

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

    關注

    5069

    文章

    19021

    瀏覽量

    303414
  • 函數
    +關注

    關注

    3

    文章

    4308

    瀏覽量

    62434
  • FreeRTOS
    +關注

    關注

    12

    文章

    483

    瀏覽量

    62015
  • 任務
    +關注

    關注

    1

    文章

    20

    瀏覽量

    8532
收藏 人收藏

    評論

    相關推薦

    FreeRTOS任務管理

    任務FreeRTOS 中最基本的調度單元,它是一段可執行的代碼,可以獨立運行。FreeRTOS 任務是基于
    的頭像 發表于 11-27 17:03 ?953次閱讀

    轉:第13章 FreeRTOS任務優先級修改及其分配方案

    優先級修改13.5 任務優先級獲取13.6 實驗例程說明13.7總結13.1任務優先級說明 下面對Fre
    發表于 08-29 11:07

    如何保證任務優先級的高低?

    原子哥得四軸 程序 是由freertos各個任務組成。任務優先級有高有低 我就想知道這個怎么保證的 高的優先級執行完了 就可以執行低得 然后
    發表于 07-22 04:35

    任務優先級問題

    優先級任務可以通過時間片輪轉調度來實現任務切換。在不同優先級任務,如果高
    發表于 04-02 04:35

    ucosii兩個任務等待信號量,由于任務優先級引起的死機怎么解決

    ,有數據就運行,沒數據就休眠。但是有一個問題:BLE_REC_TASK_PRIO7藍牙任務優先級RS485_REC_TASK_PRIO 8 RS485任務優先級在這個
    發表于 05-22 03:40

    freeRTOS任務優先級設置問題如何解決

    狀態的刷新。3、串口通信任務------接收上位機的指令,并執行相應動作,返回相關數據。4、數據采樣任務------對信號脈沖計數。比如一個完整的操作過程就是:按鍵控制進入檢測界面——>按鍵控制啟動檢測——>上位機通過串口讀取
    發表于 06-10 04:36

    FreeRTOS任務調度優先級,會直接在就緒列表調用低優先級任務么?

    由于剛開始使用FreeRTOS,所以有很多問題,也正在學習。請問各位,假如優先級高的任務時間片用完后,會直接在就緒列表調用低優先級任務么?
    發表于 06-14 09:01

    軟件定時器的優先級任務優先級是同一個東西嗎?

    任務A在運行,則軟件定時器即使時間到也不能運行。硬件中斷的優先級則是最高的,如果freeRTOS不屏蔽中斷,則任何中斷都可以中斷都可以打斷正在運行的任務
    發表于 06-19 04:06

    FREERTOS任務優先級的設置

    FREERTOS,各個任務優先級怎么設置比較好呢?或者是說有什么標準?疑惑。。。。。。
    發表于 07-19 08:03

    freeRTOS學習任務狀態運行

    2021/3/31 freeRTOS學習任務任務狀態運行:占用CPU就緒:有高優先級在運行所導致未運行的程序阻塞:一個
    發表于 01-17 07:51

    FreeRTOS中斷優先級任務優先級架構的相關資料推薦

    FreeRTOS中斷優先級任務優先級架構:Cortex-M3版本:FreeRTOS V9.0.0前言:最開始,我并沒有搞清楚什么是中斷
    發表于 02-08 06:36

    freertos怎么在任務修改任務優先級

    freertos怎么在任務修改任務優先級
    發表于 10-11 07:56

    2.FreeRTOS中斷優先級任務優先級

    FreeRTOS中斷優先級任務優先級架構:Cortex-M3版本:FreeRTOS V9.0.0前言:最開始,我并沒有搞清楚什么是中斷
    發表于 12-04 20:21 ?9次下載
    2.<b class='flag-5'>FreeRTOS</b>中斷<b class='flag-5'>優先級</b>和<b class='flag-5'>任務</b><b class='flag-5'>優先級</b>

    FreeRTOS任務優先級示例

    任務優先級:0~24之間。數字越大,任務優先等級越高。高優先級任務
    的頭像 發表于 09-15 11:13 ?2744次閱讀

    談談MCU看門狗任務優先級設置

    一個學員在學習 uCOS 系統過程,對看門狗任務優先級產生了疑惑,到底該把喂狗任務優先級設置成最高還是最低好?
    發表于 09-15 09:32 ?829次閱讀