女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

具有固定優先級調度程序RTOS的優先級倒置

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者:Johan Kraft ? 2022-06-22 15:45 ? 次閱讀

具有固定優先級調度程序的 RTOS 的核心思想是高優先級任務應該在低優先級任務之前調度。如有必要,RTOS 甚至可以搶占正在運行的任務,迫使它讓 CPU 執行更高優先級的任務。然而,作為開發人員,您必須注意可能導致較高優先級任務必須等待較低優先級任務的編程缺陷——這種情況稱為優先級倒置。

優先級反轉可以與互斥體、消息隊列或其他類型的同步對象一起發生。描述問題的最佳方式可能是通過一個示例來逐步說明。

在下面的時間線圖中,使用 Tracealyzer 捕獲,我們有一個低優先級任務(綠色)正在執行。它需要一個二進制信號量來保護某些臨界區并繼續在臨界區內執行代碼。當高優先級任務(紅色)進入就緒狀態時,RTOS 搶占綠色任務并讓紅色運行。紅色任務嘗試獲取相同的二進制信號量,但由于低優先級綠色任務持有它而被阻止。

到目前為止,一切都很好——這是預期的行為。一般來說,綠色任務現在會運行并快速釋放信號量,此時它再次被搶占,紅色任務可以獲取信號量并繼續。然而,這一次發生了反轉。出于某種原因,可能是定時等待已過期,中等優先級(橙色)任務已進入就緒狀態并被允許在綠色任務之前執行。由于橙色任務不知道有爭議的信號量,它很高興地運行完成。只有這樣,綠色任務才會最終運行,以便它可以釋放信號量并將執行權交給紅色的高優先級任務。

pYYBAGKyyLGAOwYtAAI9Uvf_ze8142.png

因此,高優先級任務被阻塞,必須等待不確定的時間,而中等優先級任務運行完成。這就是工作中的優先級倒置。

重要的是要意識到這里涉及的三項任務基本上是無能為力的。他們沒有人可以做任何事情來避免倒置,至少在沒有 RTOS 的支持的情況下是這樣。幸運的是,這種支持在許多 RTOS 中以具有優先級繼承的互斥鎖的形式提供。互斥量(互斥的縮寫)是一種用于保護共享資源的信號量。優先級繼承意味著如果一個高優先級的任務在試圖獲得一個低優先級任務當前持有的互斥鎖時阻塞,那么持有該互斥鎖的任務的優先級會暫時提高到被阻塞任務的優先級。在我們的場景中,當紅色任務被阻塞時,綠色任務將被提升為紅色優先級,從而有效地阻止了橙色任務的運行。

優先級繼承并不能真正治愈優先級倒置,它只是在某些情況下將其影響最小化。硬實時應用程序仍應仔細設計,以便一開始就不會發生優先級反轉。

通常,盡可能避免阻塞共享資源。例如,如果您的任務將數據寫入消息隊列(可能已滿),您可以改為使用足夠大但未滿的隊列,作為額外的預防措施,以非阻塞方式寫入并檢查任何失敗寫入的返回值。而不是使用分散在代碼中的多個關鍵部分(共享互斥鎖),您可以創建一個“服務器”任務,該任務執行對資源的所有直接操作,并使用消息隊列從“客戶端”任務中獲取請求,在非-阻塞方式。服務器可以通過請求中指定的其他消息隊列發送任何回復,這些消息隊列由客戶端任務擁有。

審核編輯:郭婷

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

    關注

    68

    文章

    11031

    瀏覽量

    215955
  • 服務器
    +關注

    關注

    12

    文章

    9681

    瀏覽量

    87266
  • RTOS
    +關注

    關注

    24

    文章

    840

    瀏覽量

    120746
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    CyU3PDebugPrint的最高優先級和最低優先級是什么?

    [i]CyU3PDebugPrint的最高優先級和最低優先級是什么?
    發表于 05-13 08:22

    TSN幀搶占測試:為數據傳輸打造“綠色通道”

    導語: 在復雜多變的汽車、工業控制等領域中,數據傳輸的時效性和確定性至關重要。在TAS或CQF等調度整形機制中,將不同優先級業務映射到不同隊列中,使高優先級業務在發送時不會受到低優先級
    的頭像 發表于 04-23 15:31 ?142次閱讀
    TSN幀搶占測試:為數據傳輸打造“綠色通道”

    配電柜—斷電危機?配電柜故障排查優先級指南

    在排查配電柜故障過程中,合理安排排查優先級至關重要。下面聊一下如何科學合理安排配電柜故障排查優先級順序。
    的頭像 發表于 03-06 18:55 ?286次閱讀
    配電柜—斷電危機?配電柜故障排查<b class='flag-5'>優先級</b>指南

    技術干貨驛站 ▏解鎖C語言高效編程秘訣:深入解析運算符與優先級

    在C語言的學習過程中,運算符的使用是不可忽視的重要環節。本文將繼續深入探討C語言中的運算符,重點介紹位運算符、賦值運算符及其優先級。掌握這些運算符的用法,將幫助你在編程過程中實現更加高效的代碼操作
    的頭像 發表于 10-13 08:09 ?525次閱讀
    技術干貨驛站 ▏解鎖C語言高效編程秘訣:深入解析運算符與<b class='flag-5'>優先級</b>

    瑞芯微RK3399開發板Android7.1修改網絡優先級方法,觸覺智能SBC3968開發板演示

    本文介紹Android7.1修改網絡優先級方法,基于觸覺智能SBC3968主板,搭載瑞芯微RK3399芯片,底板具備千兆網口、USB、HDMI、TYPE-C、音頻等接口。可適用于工業主機、物聯網設備、醫療健康設備、廣告機、互動自助終端、教學實驗平臺、顯示控制、車載安防和人臉識別等多個領域。
    的頭像 發表于 10-09 11:37 ?539次閱讀
    瑞芯微RK3399開發板Android7.1修改網絡<b class='flag-5'>優先級</b>方法,觸覺智能SBC3968開發板演示

    PCM9211的默認模式下,ADC和RXIN2( 光纖輸入)是自動識別的嗎,并且光纖具有輸入優先級

    咨詢一下,PCM9211的默認模式下,ADC和RXIN2( 光纖輸入)是自動識別的嗎,并且光纖具有輸入優先級?
    發表于 09-29 06:44

    使用CH32V103C8TC設置中斷優先級分組時,編譯報錯的原因?

    使用CH32V103C8TC設置中斷優先級分組時,設置為NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);編譯報錯 而使用NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); 卻不會報錯 這是什么原因呢??
    發表于 09-27 06:03

    CH32V103 使用中斷優先級分組0時報錯

    使用CH32V103C8TC設置中斷優先級分組時,設置為NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);而使用NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);卻不會報錯
    發表于 09-23 13:52

    車載以太網交換機入門基本功(4)—優先級設計與VLAN測試

    VLAN通過報文Tag、交換機端口屬性、交換機端口過濾功能得以實現,并通過優先級和隊列實現轉發的有效調度。為了驗證交換機芯片的功能實現,需要參考OPEN聯盟的TC11交換機芯片測試規范,包括通用測試、地址解析、VLAN等9個方面,此外,實時更進規范修改方案并與讀者分享。
    的頭像 發表于 09-06 14:45 ?814次閱讀
    車載以太網交換機入門基本功(4)—<b class='flag-5'>優先級</b>設計與VLAN測試

    在汽車區域模塊中使用理想二極管的優先級電源多路復用器

    電子發燒友網站提供《在汽車區域模塊中使用理想二極管的優先級電源多路復用器.pdf》資料免費下載
    發表于 09-05 11:08 ?0次下載
    在汽車區域模塊中使用理想二極管的<b class='flag-5'>優先級</b>電源多路復用器

    freertos中斷優先級在哪設置

    FreeRTOS是一個流行的實時操作系統,它廣泛應用于嵌入式系統開發。在FreeRTOS中,中斷優先級是一個重要的概念,因為它決定了中斷處理的順序和響應時間。 1. 理解中斷優先級 在討論如何設置
    的頭像 發表于 09-02 14:17 ?1364次閱讀

    通過I2C PWM IC控制伺服,可以為伺服控制進行高優先級中斷嗎?

    () 大約需要 100 毫秒才能完成請求。 我怎樣才能避免那里的事情。 我可以為伺服控制進行高優先級中斷嗎? 使用 Arduino IDE。
    發表于 07-12 06:20

    APS智能優化排產軟件的優先級應用

    資源、訂單需求和約束條件,自動計算出最優的生產計劃。在這個過程中,訂單排產的優先規則起著至關重要的作用。1.交期優先級交期優先級是訂單排產中最基本的優先規則。根據
    的頭像 發表于 06-26 17:43 ?670次閱讀
    APS智能優化排產軟件的<b class='flag-5'>優先級</b>應用

    ESP32S2如何設置中斷優先級?

    ESP32S2有六中斷, 如何設置中斷優先級? 比如在GPIO例程里 ,這種中斷優先級是如何設置的呢? 中斷寄存器列表里 ,只有簡稱,哪里能獲取這個名稱所對應的功能??
    發表于 06-21 07:59

    請問有什么方法降低WIFI中斷的優先級

    因為項目對時序輸出要求比較嚴格,WIFI中斷優先級比硬件定時器中斷優先級要高,在定時器中斷里面對GPIO管腳控制被延長執行,請問有什么方法降低WIFI中斷的優先級?
    發表于 06-19 07:37