基于S3C2440的Ethercat實時工業(yè)以太網(wǎng)
系統(tǒng)對周期性任務采用最小優(yōu)先級優(yōu)先算法進行調(diào)度,調(diào)度算法在ARM微控制器中實現(xiàn)。處理器對緊迫性事件的處理能力決定了系統(tǒng)處理突發(fā)事件的能力,把系統(tǒng)各種需要調(diào)度的任務按照緊迫程度用優(yōu)先級來劃分,通過采用最小截止期優(yōu)先算法來動態(tài)優(yōu)先處理突發(fā)事件,很好地提高了Ethercat網(wǎng)絡實時性能。
EDF(Earliest Deadline First)是一種動態(tài)可搶占優(yōu)先級實時調(diào)度,所有實時任務必須滿足以下限制條件:
(1)所有實時任務均為周期任務,且周期大于或等于截止期。
(2)所有實時任務必須在其截止期到來前結(jié)束。
(3)所有實時任務相互獨立。
(4)所有實時任務具有恒定的運動時間。
任務按周期由大到小排列為EDF以任務的截止期與當前時刻的距離確定任務優(yōu)先級(稱這一距離為時限距離),距離越近,優(yōu)先級越高,因此,EDF總是選擇當前最迫切需要完成的任務獲得處理器。Liu和Layland證明如下:
對于由n個周期任務組成實時任務集,當且僅當:
其中Ci為計算機時間,該任務集能夠由EDF調(diào)度。
EDF是最優(yōu)動態(tài)可搶占優(yōu)先級調(diào)度,對于任何實時任務集,只要存在可行的動態(tài)調(diào)度算法,則必可由EDF調(diào)度。需要注意的是,EDF只在出現(xiàn)任務實例就緒時調(diào)整任務的優(yōu)先級。因為在其它時刻,任務實例按時限距離的長短的排序關(guān)系不變,因此任務間優(yōu)先級的排序不變[9]。
6 結(jié)束語
EDF算法是對周期性任務的動態(tài)優(yōu)先級調(diào)度算法,存在以下缺點:①調(diào)度算法是針對周期性任務而言的,沒有考慮對實時系統(tǒng)中突發(fā)任務(非周期性任務)的調(diào)度,且周期任務要求彼此獨立。②調(diào)度算對周期和時限寬度相同的同步周期任務,即使在處理器利用率很低的情況下,也可能產(chǎn)生不了合理的調(diào)度。因此在這種情況下,必須進行調(diào)度算法的可行性分析[10]。
評論