國立屏東大學 即時與嵌入式系統實驗室
Real-Time Systems
即時系統
在即時系統(Real-Time Systems)裡執行的工作除必須在邏輯上正確外,還必須滿足特定的時間限制(Timing Constraint),否則將有可能帶來不可彌補的後果,例如一個使用雷達偵測前車距離,並控制車速以保持安全間距的車距調節工作,它被設定為每秒必須執行5次,且每次都必須在200ms 內完成其執行,否則將可能造成車禍事故的發生。
最為相關且最常被使用的工作模型,是由Liu與Layland於1973年所提出的週期性即時工作模型(Periodic Real-Time Task Model)[Liu1973]1)。此模型假設一個工作自其初次到達系統後,就會依據其週期時間(Period)反覆到達系統;且每次工作都必須在其截限時間(Deadline)內在處理器上執行不超過其在最差情況下的運算時間(Worst-Case Execution Time,WCET)。若是能順利在截限時間內完成的工作,就被稱為滿足截限時間(Meet Deadline);相反地,若是無法在時限內完成則被稱為錯失截限時間(Miss Deadline)或是截限時間違反(Deadline Violation)。
與時效性相關的工作模型還有偶發性工作模型(Sporadic Task Model)[Mok1983],同樣是用以表達在系統中會反覆執行的工作,但其到達系統的時間並不固定,常用以表示在系統中以特定事件(Event)驅動的工作,例如負責煞車控制的工作並不會固定的執行,而是會等待駕駛踩下煞車的事件發生時,才會執行煞車控制的工作。偶發性工作與週期性工作相同,都必須在其到達系統後,於其截限時間內完成運算;但不同的是,偶發性工作並不會於固定的週期時間到達系統,取而代之的是它使用一個最短間隔時間(Minimum Separation Time),來規範一個偶發性工作連續到達系統的時間間隔。例如前述的煞車控制工作,可以透過煞車裝置的硬體或是煞車控制軟體設計上的限制,規範出其進行連續兩次煞車動作所必須間隔的時間 – 也就是煞車控制工作的最短間隔時間。由於在最差情況下,一個偶發性工作任務的任意兩個連續的工作,其到達時間的間隔都等於其最短間隔時間,因此本計書後續除特別說明以外,相關內容皆針對週期性工作加以討論,但同時也適用於偶發性工作。除了週期性與偶發性的即時工作模型之外,若是在系統中存在非重複執行的工作,則可以使用非週期性工作模型加以表達[Liu2000],它同樣必須要在截限時間內完成,但只會到達系統一次,並不會反覆地執行。
不論工作模型為何,即時系統依據是否允許工作錯失截限時間,可區分為硬式(Hard)、軟式(Soft)與嚴格(Firm)即時系統。硬式即時系統完全不允許工作錯失截限時間,否則可能會帶來嚴重的後果(例如一個煞車控制工作的執行超出了其截限時間,則可能會造成車禍意外的發生);軟式即時系統允許工作在其截限時間後完成,但超過其截限時間後其價值會隨著逾時的時間遞減(例如愈晚傳回的胎壓偵測數據,其參考價值愈低。)。至於嚴格即時系統(Firm Real-Time System),則與軟式即時系統一樣允許工作的執行超過其截限時間,但超過截限時間後的價值為0。因為此項差異,所以大部份軟式即時系統在設計上追求的是儘可能地讓所有工作都能在截限時間內完成,但若有逾時的工作仍會儘可能地將它們完成(因為逾時後仍有價值);但是嚴格即時系統在面臨工作執行逾時時,通常會直接將逾時的工作捨棄(反正再繼續執行也沒有任何價值)。
論文關係圖
論文清單