具有優先順序的搶占式多工系統由於響應的實時性在嵌入式廣泛使用,除了合理安排各個執行緒的優先順序外,處理好執行緒之間的關係極大的影響系統的效能和實時性,是程式設計師在實際進行系統設計時工作的重點。執行緒對其他執行緒的影響分為直接和間接兩種。直接影響為執行緒資源衝突,常用的解決方法為加鎖進行互斥訪問,這些在許多地方都有討論,但是對嵌入式系統中的間接影響討論的較少,間接影響的表現為引起該事件的執行緒已經退出,但是其造成的影響卻持續影響後續系統的實時性。在嵌入式系統中由於和硬體互動緊密,這一問題表現的更為突出,我們知道,中斷的優先級別是高於系統中的所有執行緒。如果低優先順序別的執行緒啟用的資源會產生中斷,而且該中斷的關閉也由該執行緒操作,則需要考慮該中斷對系統的***,即無效的中斷搶占處理器造成系統響應緩慢。在我們設計的系統中就發生這樣的情況:
我們考慮這一種情況:在某個實時系統中有三個執行緒
abc,優先順序依次降低,
c執行緒執行過程中會開啟定時器進行資料傳送,資料傳送完成後
c會關閉定時器,由於傳送資料的時間很短,故不會影響系統的整體效能。但是如果在
c正在進行資料傳送過程中被高優先順序的執行緒搶占,這時候會出現高優先順序執行緒在開啟定時器情況下執行,由於除了
c執行緒會使用定時器,其他執行緒都對該定時器資源不可知,但是當定時器中斷頻度非常高會嚴重影響執行緒的執行,即執行緒執行的時間被拉長了,進而對系統的響應時間造成影響。
實時嵌入式系統簡介
嵌入式系統設計中最早的決策點之一是系統是否需要實時計算功能。實時計算描述了在有限的時間範圍內對輸入做出反應並提供規定的輸出的能力。使用實時計算的裝置部署在應用程式中,在這些應用程式中,它們的正確功能可以改變生與死。例如,考慮傳統家庭轎車中的安全氣囊。當車輛在發生碰撞時突然停止時,安全氣囊必須在一瞬間...
嵌入式系統 實時作業系統 RTOS
一 rtos中的基本概念 背景 rtos具有的功能 作業系統中的程序與執行緒 二 嵌入式作業系統的主要種類 1 uc os ii 2 linux 作業系統 3 vxworks 4 wince os 作業系統,operating system 是嵌入式系統中的靈魂,是其軟體系統中的重要組成部分,嵌入式...
嵌入式 實時作業系統導論
排程任務和資料 訊號量和共享資料 可重入性和訊號量 多個訊號量 訊號量作為訊號裝置 使用訊號量的易出現問題 訊號量變數 所謂任務,是指在乙個rtos中所寫的軟體的基本構造塊,也就是通常所說的子程式。有關任務是如何呼叫 它與rots是如何配合工作的等問題稍後再討論。在rtos中乙個任務總是處在下列三種...