實時任務
實時任務
所謂實時任務是指任務的結束時間有嚴格約束(Deadline)即任務執行必須在Deadline之前完成。
在實時系統中,一個應用通常由一組任務構成,每個任務完成應用中的一部分功能,組合後為用戶提供特定的服務。實時任務的分類方法有多種。
根據任務的周期劃分,可以分為3類。
周期任務:周期任務是指按一定周期達到並請求運行,每次請求稱為任務的一個任務實例,任務實例所屬任務的起始時刻稱為該任務實例的到達時刻,任務實例被置為就緒態的時刻稱為該任務實例的釋放時刻。
偶發任務:在偶發任務中,雖然其任務實例的到達時刻不是嚴格周期的,但相鄰任務實例到達時刻的時間間隔一定大於等於某個最小值,即偶發任務的各任務實例按照不高於某個值的速率到達。因此在實際應用中,偶發任務經常被當作周期任務進行處理,其周期為相鄰任務實例到達時刻的最小時間時隔。
非周期任務:非周期任務是指隨機到達系統的任務。
任務超時定義
在實時系統中,如果一個任務未能在截止期限前完成,那麼稱該任務超時。
根據是否允許任務超時,及時超時后對系統造成的影響,任務又分為以下4類。
強實時任務
強實時任務(Hard Real-Time Task):通常是指那些必須在規定的時間內完成的任務,不允許它的任何任務實例超時。若有任務實例未在截止期限內完成,則會對系統造成不可估量的損失。一般採用在最壞情況下任務的響應時間對強實時任務進行可調度性分析。如果存在最大響應時間大於截止時限的任務,則認為該系統不可調度。
准實時任務
准實時任務(Firm Real-Time Task):通常是指允許任務超時,但若任務超時,該任務的計算結果沒有任何意義。
弱實時任務
弱實時任務(Soft Real-Time Task):通常是指允許任務超時,但超時后的計算結果仍有一定的意義,並且其意義隨著超時時間的增加而下降。
弱—強實時任務
弱—強實時任務(Weakly Hard Real-Time Task):弱—強實時任務通常是周期任務,並且具有允許周期任務的一些任務實例超時,但這些超時的任務實例的分佈應滿足一定的規律的特性。將這種要求稱為超時分佈約束。若不滿足超時分佈約束,則會造成系統動態失效。在本文中,任務實例和請求是相互通用的。