
第39卷第10期 計算機研究與發展 Vo1.39,N。.10
2002年10月 JOURNA1 OF COMPUTER RESEARCH AND DEVELOPMENT Oct.2002
一種基于延遲搶先的消息最大
響應時間算法
竇 強 周興銘
(國防科學技術大學計算機學院 長沙410073)
(douq@sina.corn)
摘 要 分布式實時系統是實時系統的一個重要研究方向,有著廣泛的應用背景.消息最大響應時間的定量分析
是該研究方向中的一個關鍵問題.在深入分析國內外相關研究的基礎上,針對采用TDMA協議的分布實時系統提
出了一種基于延遲搶先的消息最大響應時間算法,解決了現有消息最大響應時間算法中存在的正確性問題,對消
息的最大響應時間做出了完整、精確的分析.
關鍵詞 實時系統,分布式,可調度性分析,消息,最大響應時間,TDMA協議
中圖法分類號TP31 6.2
A WoRST—CASE RESPoNSE TIME ANALYSIS ALG0RITHM oF
MESSAGES WITH DEFERED PREEMPTIoN
DOU Qiang and ZHOU Xing—Ming
(School of Computer Science,National University of Defense Technology,Changsha 410073)
Abstract In a distributed real—time system,worst—case response time analysis of messages is
very important to system schedulabi¨ty analysis.Proposed in this paper is a worst—case response
time analysis algorithm of messages with deferred preemption in a distributed real time system
using the TDMA protoco1.By solving a correctness problem existing in former algothrims,this
algorithm can precisely derive the worst—case response time of messages.
Key words real—time system,distributed,schedulability analysis,message,worst—case response
time.TDMA protocol
1 引 言
分布式實時系統與單機實時系統相比在性能價
格比、系統可擴充性和容錯能力等許多方面都具有
一定優勢,目前許多關鍵性的控制領域,如航空航天
器與機動車輛的駕駛控制、工業的生產控制等,都已
經或正準備采用分布式實時系統,以降低造價、減輕
重量、提高系統的可靠性和快速反應能力.由于這些
原稿收到日期:2001—07—06;修改稿收到日期:2002—06—10
關鍵領域對系統的實時特性、容錯能力等都有很高
的要求,并且一旦這些需求得不到滿足,會造成巨大
的且無法挽回的生命、財產損失以及環境危害.因此
需要有一種非常嚴謹的分析手段,即系統的可調度
性分析,來分析和驗證分布式實時系統在最大負載
下或部件失效的情況下是否仍能滿足應用的實時性
要求,這對保障系統的安全運行意義極為重大.例如
在Boeing 777飛行控制軟件的開發過程中,其中超
過5O 的開發時間和精力都被投入到了系統的可
lI_蓮瞧|_
維普資訊
1400 計算機研究與發展
調度性分析和軟件測試中.
分布式實時系統的一個重要特點是任務間的消
息通信,要分析系統整體的實時特性必須要考慮到
消息通信的時間開銷.因此,消息的最大響應時間分
析,即消息從源節點完整發送到目的節點所需最大
時間的定量分析,一直都是系統可調度性分析中的
一個重要研究課題.許多其它問題的解決如任務的
劃分方法、任務和消息的調度策略等都是以消息的
最大響應時間分析為基礎的.在這方面很多學者已
經進行了一些研究,如Tindell[1]就針對TDMA協
議提出了一種消息的最大響應時間分析算法,但由
于消息模型比較簡單,未考慮消息的延遲搶先特性,
因此分析不夠精確.Burns等人[2 提出了延遲搶先
的概念并提出了相應的基于延遲搶先的消息最大響
應時間分析算法,但該算法是針對點對點線路提出
的,不適用于分布式實時系統,而且更重要的是算法
的正確性存在問題,在某些情況下,該算法會低估消
息通信的時間開銷,從而可能會導致系統的可調度
性分析做出錯誤的結論.Tindell E。 在Burns E 等人
工作的基礎上分別對Token Ring和Priority Bus
兩種網絡協議進行了消息最大響應時間分析,
Iain[ ,Henrik[ ]以及Paul[ ]也在Burns[ 等人工作
的基礎上進行了一些調度算法等方面的研究,但它
們均未解決上述Burns[2 算法存在的正確性問題.
本文針對TDMA協議提出了一種基于延遲搶先的
消息最大響應時間算法,解決了上述問題,對采用
TDMA協議的分布式實時系統中的消息最大響應
時間做出了完整、精確的分析.
本文共分6節,第2節建立了一個分布式實時
系統的計算模型,并簡單介紹了TDMA協議;第3
節給出了一些基本概念的定義;第4節針對TDMA
協議提出了一種基于延遲搶先的消息最大響應時間
算法;第5節通過一個簡單實例將本文算法與
Burns_2 算法進行了對比;最后第6節對全文做出了
簡短的總結.
2 系統模型
分布式實時系統一般由若干個節點和連接各節
點的互連網絡組成,文獻[1~3]中提出的節點構成
如圖1所示.系統中每個節點都由一個處理機和一
個網絡接口部件組成,處理機與網絡接口部件之間
共享一個報文發送隊列和一個報文接收隊列.
本文假定系統中各節點的任務集都是周期任務
集,且任務不會在節點之間遷移.各節點的消息集也
是一個周期消息集,它包括了由該節點上任務發送
給其它節點上任務的各種消息.消息的產生模型為
對于每種消息,消息的源任務每隔固定任務周期產
生一條該消息的消息實例;消息實例的長度對于每
種消息來說是固定的;在發送前,消息實例被分割為
若干報文,報文的長度是固定的;在下一個消息周期
開始前,該消息實例一定要發送完成.本文還假定消
息的發送采用固定優先級搶先式調度算法,高優先
級消息的報文優先得到發送.在本文中,我們并不關
心消息的優先級分配策略,但假定同一節點內各消
息的優先級是互不相同的.
圖1節點構成
TDMA協議是一種具有很強確定性的網絡通
信協議,具有較好的容錯性和時間響應特性,因此許
多分布實時系統中采用的通信協議都是在TDMA
協議的基礎上演變而來的,如TTP/C,FlexRay以
及Byteflight等.TDMA協議中,每個節點都被分
配了固定長度的發送時隙,節點只能在自己的時隙
中發送數據.如果不考慮時鐘同步漂移的問題,各節
點的發送時隙在時間上是連續的.從第1個節點發
送時隙的開始時刻到最后一個節點發送時隙的結束
時刻之間的時間間隔稱為一個TDMA周期,當一
個TDMA周期結束后,下一個TDMA周期立刻開
始,如此循環反復.本文假定各節點發送時隙的長度
都是報文發送時間的整數倍.
3基本概念定義
定義1.消息產生的周期稱為消息周期.
根據第2節假設,消息周期是源任務周期的整
數倍.
定義2.消息的發送時間是指將消息的一個消
息實例發送到網絡上所需要的時間.
維普資訊
10期 竇 強等:一種基于延遲搶先的消息最大響應時間算法
每種消息的消息實例都可分割為固定數量的報
文,因此每種消息的發送時間是固定的.
定義3.在一個消息周期中,源任務將消息實例
放入發送隊列的時刻稱為消息實例的釋放時刻,釋
放時刻與該消息周期起始時刻之間的差值稱為該消
息實例的釋放偏移.由于源任務運行條件的復雜性,
各消息實例的釋放偏移可能有所不同,其最小值為
0,最大值稱為該消息的釋放抖動.
定義4.從一個消息實例的釋放時刻開始,到該
實例中的第k個報文發送完成時為止的這段時間稱
為該消息實例第k報文的響應時間,所有消息實例
第k報文的響應時間的最大值稱為該消息第k報文
的最大響應時間.
定義5.從一個消息實例的釋放時刻開始,到該
實例發送完成時為止的這段時間稱為該消息實例的
響應時間,所有消息實例的響應時間的最大值稱為
該消息的最大響應時間.
定義6.從一個消息實例的釋放時刻開始,到該
實例中的第k個報文開始發送時為止的這段時問稱
為該消息實例第k報文的等候時間,所有消息實例
第k報文的等候時間的最大值稱為該消息第k報文
的最大等候時間.
定義7.消息的關鍵情形:消息的關鍵情形是指
在該種情形下該消息消息實例的響應時間將達到最
大值.
定義8.在網絡通信中,不論報文的優先級如
何,一個報文一旦開始發送就不能被任何其它報文
中斷,這種特性稱為報文的延遲搶先特性.
在消息的最大響應時間分析中,如果不考慮報
文的延遲搶先特性,即報文在發送過程中可被在其
問到達的任何高優先級報文搶先,則報文的響應時
間會因此增大,從而使分析結果不精確,高于實際的
消息最大響應時間,最終導致過于悲觀保守的系統
設計,浪費系統資源,增加系統造價.
4 基于延遲搶先的TDMA協議的消
息最大響應時間算法
假定系統中某節點JV發送給其它節點的消息
集為{ ., :,…, },其中c為消息種類數,消息
可用一個三元組(L廠 ,X ,T )來表示,其中L廠 為消息
的釋放抖動;X 為消息 的發送時間,X 一P ×
P,P 指 ,的消息實例分割成的報文數量,P為報文
的發送時間;T 為 的消息周期.消息 的最大
響應時間記為R ,消息 第k報文的最大響應時間
和最大等候時間分別記為 和 (1≤正≤P ),顯
然有R —r』' ,此外根據報文的延遲搶先特性,不難
看出,J 一 Ⅲ+P,因此R 一 +P.
假定節點JV的發送時隙長度為S ,TDMA周
期記為71 。 ,根據TDMA協議,在每個TDMA周
期中,其它節點都要占用其中(7’ o —S )的時問,
不難看出,對于節點JV,其它節點對網絡資源的這
種周期性占用非常類似于一個周期性消息對網絡資
源的占用.因此,為便于分析節點JV的消息最大響
應時間,我們有如下定義.
定義9.對于節點JV,其它節點對網絡資源的
占用可看成是一個周期性消息對網絡資源提出的周
期性請求,這個周期性消息就被稱為是節點 的虛
擬消息.
我們將節點JV的虛擬消息記為 ,根據消
息模型,這個消息可用三元組(0,(71 r【 一S, ),
7 o )來表示.由于各節點時隙是固定的,需要嚴格
遵守,因此虛擬消息的優先級被設為最高.本文以下
的討論都是基于消息集{ ., 。,…,m , , }進行
的,這個消息集我們記為 ,并將 中優先級高于
,的消息集合記為 聲( ).
定理1.消息 的關鍵情形出現在同時滿足以
下條件的情況下:
① ( )中消息所產生的消息實例同m 的消
息實例在同一時刻釋放;
②在消息實例同時釋放前,坳( )的消息實例
的釋放偏移分別為各自的釋放抖動;在這之后,所有
( )中的消息產生的后續消息實例的釋放偏移均
為0;
③一個低優先級報文在 的消息實例釋放時
剛好開始發送.
證明.圖2描繪了當這些條件滿足時的情況,
其中t。表示共同的釋放時刻.
(1)對于V ∈hp( ),假設 ,消息實例的釋放
時刻與 消息實例的釋放時刻不相等.當 消息
實例釋放時, ,有兩種可能,一種可能是 ,正在發
送一個消息實例,第2種可能是 ,已經發送完成上
一個消息實例,正在等待下一個實例的釋放.對于第
1種可能如圖3所示, 消息實例的釋放時刻為t ,
消息實例的釋放時刻為t:,由于在時間段It.,t ]
內 ,要發送報文,因此即使將 消息實例的釋放
時刻提前為It.,t:]中的任意值,該實例的發送完成
時間仍然保持不變,從而使 消息實例的響應時間
維普資訊
14O2 計算機研究與發展
增大.因此當 消息實例的釋放時刻提前至t 時,
消息實例的響應時間取得最大值,此時 消息
實例的釋放時刻與 ,消息實例的釋放時刻相等.對
于第2種可能如圖4所示, ,消息實例的釋放時刻
為t , 消息實例的釋放時刻為f .顯然,如果將 ,
消息實例的釋放時刻提前, 的后續消息實例可能
會在 消息實例發送完成前被釋放,而且搶先于
消息實例之前得到發送,從而使 ,消息實例的
響應時間增大.因此當 ,消息實例的釋放時刻提前
到t 時, 消息實例的響應時間取得最大值,此時
鞏消息實例的釋放時刻與 ,?肖息實例的釋放時刻
相等.
圖2消息 ,的關鍵情形
圖3第1種可能情況
l
W 。。。。。。●。。●。。。。。●_-_。。。。。。。。__。。——
,
,
圖4第2種可能情況
(2)對于Vm ∈hp( ),假定7.U 的一個消息實例
與 的一個消息實例在t 時刻同時釋放,且該 ,
實例的釋放偏移為 (0≤ 矗≤J ).通過計算可知,
m,后續實例的到達時刻為t jit+丁 ,…,tl jit+
T,,( >0).如圖5所示.顯然. 赴越大,且后續實例
的釋放偏移越小,后續實例的釋放時刻就越接近f 。
m 消息實例的響應時間也會隨之增大或保持不變
(因為可能會有更多的 ,的后續消息實例搶先于
消息實例之前得到發送).因此,當fit—J,且 ,
后續實例的釋放偏移都為0時, ?肖息實例的響應
時間取得最大值.
圖5釋放抖動對 響應時間的影響
(3)在網絡通信中,由于報文具有延遲搶先特
性,因此消息 ,的一個消息實例可能會因為等待一
個低優先級報文發送完成而被阻塞。從而增大消息
實例的響應時間.假設一個低優先級報文的開始發
送時刻為t , 的一個消息實例的釋放時刻為t!.如
果t >f。,根據消息調度策略,該報文的發送對 消
息實例的響應時間沒有影響.如果t ≤f:,該情況與
(1)中的第1種可能比較類似,因此當t 一t 時。
消息實例的響應時間取得最大值. 證畢.
定理2.在消息 的關鍵情形下,對Vk(1≤志
≤P ),鞏消息實例的第k報文響應時問以及第k
報文等候時間均達到最大值.
證明.證明過程與定理1的證明類似,不再贅
述.
根據定理2,若消息 在t。時刻釋放的一個消
息實例滿足定理1所述條件,則對V志(1≤志≤P ),
該消息實例的第k報文響應時間的值就是rf1 ,該消
息實例的第k報文等候時間的值就是硼 .該消息
實例的第k個報文記為 .
該消息實例的第k報文等候時間即硼 是由3
部分構成的:第1部分是該實例發送前(志一1)個報
文本身所需的發送時間,記為C ,顯然C :(矗
1) ;第2部分是該實例在前(志一1)個報文的發送過
程中因為等待一個低優先級報文發送完成而被阻塞
的時間,稱為阻塞時間,記為BⅢ,根據定理1中條
件③,顯然有B —l0;第3部分是該消息實例在第k
個報文開始發送前因高優先級消息實例的搶先發送
維普資訊
10期 竇 強等:一種基于延遲搶先的消息最大響應時問算法
而被阻礙的時間,稱為阻礙時間,記為, .
直接計算Ii.k較為困難,因此我們采用迭代的方
式來計算叫Ⅲ和, ,我們將第q次的迭代結果分別
記為zu…(q)和, ,其中q≥0.首先給定初值, 一0,
-
-CⅢ+B +, =kp,這是不考慮阻礙時間時
的第k報文等候時間.對V ∈hp( ),根據定理l中
條件①和條件②,m,的一個消息實例也在t。時刻釋
放,如圖6所示:
I
I、
m| Ji l I … l l
w
: m
i ●____—— _。●。-。。-●_-_________—— … 廠_]
,
,
圖6 ,消息實例對 ,消息實例的阻礙時J司
在時間段[f。,t。+叫 ]內,消息 ,共釋放了
廠 T ]個消息實例,這些消息實例均要搶先
于戶 之前發送,此外,如果叫 +.,,一iF,,(_廠>0),
則消息 還會在t。+叫 時刻釋放一個消息實例,
因為該消息實例優先級比較高并且此時戶 正準備開
始發送,所以該實例也會優先于P 得到發送
(Burns_2 算法正是因為未考慮在t。+叫 時刻釋放的
高優先級消息實例對戶 的搶先,所以低估了消息的
最大響應時間),因此消息 ,在時間段[f。,t。+叫 ]
內對 ,的阻礙時間應為f L _J+ 1×x ,總
阻礙時間 I
E hp f L_J+ ]× V (f)【一 一 J
x ,從而得到新的等候時間叫 —CⅢ+BⅢ+ .
由于 >ZU…(0),即等候時間增大,從而可能會使阻
礙時間進一步增大,通過與上面類似的分析可知,在
時間段 。,t。+叫 ]中,高優先級消息實例對m。的
妨礙時間 ∑ f L_J+ ]X V iE Php(訂I一 一 J
x,,從而又得到新的等候時間叫 ,如此反復迭代,
迭代公式為
w 、 一C +Bm+I ”一
¨ L _J+ 1 ,Y m,∈hp(f)(一 』
其中q≥0.
迭代直至砌 ”一叫 ,即等待時間不再增加時
停止,此時叫 一是10+, ,該式表明在 ,£。+訓 ]
時間段內,該消息實例發送前(是一1)個報文用了長
為(是一1)10的時間,被一個低優先級報文阻塞了長
為10的時間,被高優先級消息實例阻礙了長為
的時間,最終在f。+ 時刻所有的高優先級消息實
例都已發送完成,可以開始發送戶 了,因此砌 一
叫 .
根據上述計算結果,不難得出在延遲搶先條件
下的消息m 的計算公式為:
R —r.} —w_.1 +p—w +p.
其中,叫 ”一叫 ,“≥l;
’===P ×10+
J+1] ,
其中q≥0,叫 一P ×10.
5 實例分析
本節將通過一個簡單實例將上節中提出的基于
延遲搶先的消息最大響應時間算法與Burns~糾算法
進行對比.在以下的討論中,我們將Burns-2]算法簡
稱為算法l(注:由于Burns衛 算法是針對點對點線
路提出的,為使之適合于TDMA協議,這里對
Burns_2 算法略微做了一些修改),上節中提出的算
法簡稱為算法2.
假設在一個僅包含兩個節點Ⅳ.和Ⅳ。的分布
式實時系統中,為節點Ⅳ.和Ⅳ 分配的時隙分別為
30Otis和l00/ ̄s,因此T¨)MA=40Otis,10設為l00/ ̄s.
其中Ⅳ.的消息集如表l所示,各消息在表中按照
優先級從高到低的順序排列.
表1 N。的消息集
利用算法l和算法2分別對Ⅳ.消息集中的消
息進行最大響應時間分析,結果如表2所示:
表2分析結果對比 s
由表2可以看出,在對 。的分析中兩種算法產
維普資訊
1404 計算機研究與發展 2002焦
生了不同的結果.由手工計算檢驗可知,算法2得出 3
的結果是正確的.
6 小 結
本文針對有廣泛應用前景的分布式實時系統提
出了一種基于延遲搶先的消息最大響應時間算法,解
決了現有消息最大響應時問算法中存在的問題,比原
有算法完整、精確,可適用于所有情況.對于采用其它
通信協議的分布式實時系統,該算法對其消息最大響
應時間分析也可起到很強的理論指導作用.
參 考 文 獻
1 K Tindel1.Holistic schedulability analysis for distributed hard
real time systems.Department of Computer Science,
University of York,Tech Rep:YCS 93 197,1993
2 A Burns,M Nicholson,K Tindell,N Zhang.Allocating and
scheduling hard real——time tasks on a point—to—point distributed
system.In:Proc of the IEEE Workshop on Parallel and
Distributed Real—Time Systems.California:IEEE Press,
1 993.1】~20
5
6
K Tindel1. Analysis of hard real—tlnle COUlnlUnlcatlOrlS.
1)epartment of Computer Science,University of York. l'cch
Rep:YCS一94 222,l994
J B lain.Scheduling and timing analysis for safe critical real
time systems[Ph I)dissertation].Department of Computer
Science,University of York,United kingdom,1998
Henrik 1.onn. Synchr0nizati0n and communications results in
safety critical real—time systems[Ph D dissertation].Chalmcrs
University of l'echnology,Sweden.1 999
Paul Pop.Scheduling and communications synthesis for
distributed real—time system[Ph D dissertation].1nstitutc of
Technology,I inkoping University,Sweden,200O
竇 強 男,1973年生,博士研究生
主要研究方向為實時系統.
周興銘 男,1938年生,中國科學院
院士,教授,博士生導師,主要研究方向為
高性能計算機體系結構、移動計算、數據
庫、實時系統等.
Il口I
維普資訊
本文發布于:2023-03-06 01:30:13,感謝您對本站的認可!
本文鏈接:http://m.newhan.cn/zhishi/a/1678037414126167.html
版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。
本文word下載地址:周興銘.doc
本文 PDF 下載地址:周興銘.pdf
| 留言與評論(共有 0 條評論) |