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

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

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

3天內不再提示

RTOS常用的調度算法

strongerHuang ? 來源:strongerHuang ? 2023-05-29 09:22 ? 次閱讀

從裸機(前后臺架構)的軟件開發過渡到使用實時操作系統(RTOS)可能是一項困難的工作。 但使用RTOS有許多優勢,例如簡化應用集成,支持任務搶占調度,當開發人員使用復雜的32位微控制器,且可以獲取足夠的Flash和RAM空間時,使用RTOS開始變得有意義。 許多32位應用程序需要使用USB、TCP/IP和文件系統,這對于裸機應用程序的開發是非常困難的,且大多數第三方中間件被設計為與RTOS無縫集成。

這里分享一個嵌入式招聘信息的平臺:

1

時間片輪詢調度

前后臺系統實現通?;谳喸冋{度技術,它是一種很自然的軟件編寫方式,只需向超級循環中添加新代碼,相當于增加了一個新的任務。

RTOS中的輪詢調度策略,是允許多個任務可以分配同一個優先級別。調度程序基于時鐘監控任務時間,任務處于相關優先級,按照先進先出的原則執行分配到的時間片,時間到了,即使當前任務還沒有完成,任務也將CPU時間傳遞給下一個任務。在下一個分配到的時間段內,該任務將從它停止的位置繼續執行。

fa1365de-fdb6-11ed-90ce-dac502259ad0.png

常用的RTOS,如μC/OS-III(Cs/OS3)、FreeRTOS都支持時間片輪詢算法。FreeRTOS中每個任務的時間片長度是固定的,為一個時間節拍;而μC/OS-III中每個任務的時間片長度可變,可在任務創建時指定。

2

基于優先級的協同調度

在RTOS中,協同調度是基于優先級的非搶占調度方法。任務按優先級排序,并且是事件驅動類型的,一旦正在運行的任務完成,或者任務主動調用OS服務放棄CPU,就緒運行的優先級最高的任務才可以獲得CPU使用權。

fa460ab6-fdb6-11ed-90ce-dac502259ad0.png

3

搶占式調度

RTOS通過可搶占調度保證實時性。為了保證任務響應,在搶占調度策略中,只要一個優先級更高的任務就緒,正在運行的任務低優先級任務將被切換出來。通過搶占,正在運行的任務被迫放棄處理器,即使任務工作還沒有完成。

fa95bf48-fdb6-11ed-90ce-dac502259ad0.png RTOS通??梢耘渲脼槭褂迷S多確定性調度算法,以保證滿足任務截止時限。如FreeRTOS、μC/OS-III支持搶占和時間片輪詢兩種調度方法。 ?

4

總結

RTOS對于嵌入式軟件開發人員來說是一個強大的工具。RTOS應用中,每個任務都有單獨的任務控制塊,其中包含堆棧、優先級和ID等參數。每個任務都可以被看作是單獨的應用程序。RTOS還提供了各種各樣的同步和通信工具,如信號量、互斥信號量和消息隊列,簡化應用的開發。

但任務切換將消耗CPU時間,即使在32位處理器上,RTOS也會造成時間損失。任務切換比中斷占用更多的時間。如果是一個很小的應用程序,但需要充分利用處理器資源,在這種情況下,需仔細考慮RTOS的可行性。

每種調度算法都有其優缺點,了解RTOS常用的調度算法,可以幫助我們做出合適的選擇。

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

    關注

    48

    文章

    7496

    瀏覽量

    151083
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10829

    瀏覽量

    211183
  • RTOS
    +關注

    關注

    22

    文章

    809

    瀏覽量

    119451

原文標題:RTOS應用中的調度策略

文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    請問CMSIS-RTOS RTX的任務調度鎖在哪里?

    請問一下,CMSIS-RTOS RTX的任務調度鎖在哪里?謝謝!
    發表于 05-13 08:28

    RTOS的ABC討論(轉)

    ,這個時間就不怎么太保證,偶爾的會超出,僅僅有統計上的意義。不嚴謹的說是這個意思。因為要實時,所以調度算法不能使用普通的調度算法,調度
    發表于 02-27 14:20

    詳解Kernel2.6調度算法

    Kernel2.6調度算法仍然是基于優先級的調度,它的算法復雜度為O(1),也就是說是調度器的開銷是恒定的,與系統當前的負載沒有關系。
    發表于 08-07 06:52

    RTOS實時內核μC/OS怎么優化任務調度算法?

    /OSII繼承了μC/OS的算法,有執行效率高、占用空間小、實時性強和可擴展性好等特點,被移植到幾乎所有類型的CPU上,成為在嵌入式領域非常有影響力的RTOS。然而,由于該實時內核是為8位CPU設計的,對于那些具有優先級算法硬件
    發表于 11-06 06:40

    RT_Thread的算法和uCosIII的調度算法一樣嗎?

    我看官方手冊說設置時configMAX_PRIORITIES不能超過32,有沒有誰試過改成255的或者更大的,小弟改了幾下都不行!還有能問問FreeRTOS的任務調度算法和RT_Thread的不一樣,RT_Thread的算法和u
    發表于 06-18 09:00

    調度器的原理及其任務調度代碼實現

    一、介紹調度器是常用的一種編程框架,也是操作系統的拆分多任務的核心,比如單片機的裸機程序框架,網絡協議棧的框架如can網關、485網關等等,使用場合比較多,是做穩定產品比較常用的編程技術二、原理1
    發表于 02-17 07:07

    基于DiffServ模型的調度算法

    區分服務(DiffServ)模型中不同隊列調度算法對網絡性能有不同的影響。該文介紹了DiffServ實現模型,分析比較了目前4種典型隊列調度算法的基本原理及性能特點?;贠PNET M
    發表于 04-13 09:29 ?14次下載

    網格任務調度算法研究

    網格任務調度算法是影響網格成功與否的關鍵技術之一。本文總結了網格計算系統的體系結構和特征,分析了網格任務調度算法的基本原理和性能指標,并對各種調度
    發表于 08-14 10:27 ?10次下載

    基于嵌入式RTOS的閉環反饋調度算法的研究

    分析了常見調度算法的特點,提出一種基于嵌入式實時操作系統的閉環反饋控制調度策略。針對任務的特點.從任務的周期與非周期性、I/O消耗和處理器消耗型兩個方面對任務進行
    發表于 10-10 15:23 ?32次下載

    動態調度算法(DSA)

    動態調度算法動態調度算法(DSA)包括2 個方面:動態調度協議(DSP)和利用非實時間隔重發控制數據。
    發表于 03-30 10:30 ?1753次閱讀
    動態<b class='flag-5'>調度</b><b class='flag-5'>算法</b>(DSA)

    動態車間調度問題的改進微粒群算法

    為了對生產車間調度過程中發生的動態事件進行快速、有效的處理,提出了一種將微粒群算法與遺傳算法(CA)、模擬退火算法(SA)相結合的混合微粒群算法
    發表于 11-07 17:26 ?0次下載
    動態車間<b class='flag-5'>調度</b>問題的改進微粒群<b class='flag-5'>算法</b>

    電梯調度算法有哪些?

    1、傳統電梯調度算法 1.1先來先服務算法(FCFS) 先來先服務(FCFS-First Come First Serve)算法,是一種隨即服務算法
    的頭像 發表于 12-31 11:29 ?5865次閱讀

    來了解一下RTOS應用中的調度策略

    從前后臺架構的軟件開發過渡到使用實時操作系統(RTOS)可能是一項困難的工作。但使用RTOS有許多優勢,例如簡化應用集成,支持任務搶占調度,當開發人員使用復雜的32位微控制器,且可以獲取足夠
    的頭像 發表于 02-24 11:51 ?1098次閱讀

    RTOS應用中的調度策略

    RTOS中,協同調度是基于優先級的非搶占調度方法。任務按優先級排序,并且是事件驅動類型的,一旦正在運行的任務完成,或者任務主動調用OS服務放棄CPU,就緒運行的優先級最高的任務才可以獲得CPU使用權。
    的頭像 發表于 05-29 09:19 ?655次閱讀
    <b class='flag-5'>RTOS</b>應用中的<b class='flag-5'>調度</b>策略

    RTOS核心:調度和分割

    對許多嵌入式項目來說,系統設計師都傾向于選擇實時操作系統(RTOS)。但RTOS總是必要的嗎?答案是取決于具體的應用,因此了解我們要達到什么目標是決定RTOS是必要的還是花瓶的關鍵。 一般來說,在
    的頭像 發表于 06-22 10:46 ?729次閱讀