丁潔
(陜西工業職業技術學院 陜西 咸陽 712000)
隨著高新技術的發展,航空電子系統必將面臨更加嚴峻的挑戰。未來對航空電子系統功能的要求愈來愈多,未來的航空電子必須具有更多的功能、更好的適應性、更高的可靠性和更強的生存能力。航空電子要達到這種要求,唯一的途徑就是系統綜合化技術的應用,本文討論的重點就是航空電子系統的綜合化發展過程以及實現綜合化需重點關注的關鍵技術原理。
電子技術的快速發展為航空電子向低成本、低能耗、小型化以及綜合化發展提供了支撐平臺。綜合模塊化航空電子體系架構(Integrated Modular Avionics,IMA)是繼聯合體系架構后航空領域內提出的新一代航空電子體系,它將傳統聯合體系的各子系統進行綜合,并滿足確保各子系統之間相互獨立以及故障隔離的要求。要實現這樣的系統必然要求操作系統能夠支持各應用子系統在時間和空間上的獨立,各子系統之間、子系統與內核之間具有不同的權限管理能力,以及不同安全級別應用系統的保護和故障分級與隔離。
傳統的實時操作系統調度的對象為任務或進程,如圖1所示。開發人員需要將應用分為不同的任務,操作系統根據自己的調度算法調度各任務。不同的操作系統一般會采用不同的調度策略。

圖1 傳統操作系統模型Fig.1 The traditional operating system model

圖2 強分區操作系統模型Fig.2 Strong partition operating system model
為了滿足綜合模塊化航空電子體系結構的新要求,操作系統需要提供如圖2所示的調度模型。該模型的調度對象由分區和任務構成,分區代表一個在空間和時間獨立的域,在該域對綜合模塊化航空電子架構的一個應用子系統[1]進行調度和管理。一個分區內由多個任務構成,這些任務可以是周期任務、非周期任務或偶發任務。每個分區內可以采用不同調度策略,甚至不同的操作系統內核。
任務模型將任務的工作分為計算C和通信M兩部分,任務在計算完后輸出消息。 由此任務 τi可以由四元組(Ci,Mi,Di,Ti)表示,其中Ci表示任務的最壞執行時間(Worst Case Execute Time,WCET),Di表示任務的時限,Ti表示任務的周期,Mi表示任務發送的消息大小。
綜合模塊化操作系統分區間通信[2]采用端口(Port)的通信方式。每個端口要么位發送端口,要么位接收端口。綜合考慮分區通信與分區調度后,分區的通信會隨著分區調度帶來固有的分區延遲,如圖3所示。分區A有兩個任務t1和t2。分區B有兩個任務t3和t4。t1需要向t3發送數據,t4需要向t2發送數據。

圖3 分區間通信模型Fig.3 Inter partition communication model
為了保證分區間數據通信的完整性和及時性,同時便于分區端到端延遲分析,本系統模型將分區間通信數據進行歸一化處理。引入Periodic I/O模型[100]進行消息通信,在圖4中,P1分區中有4個任務T1,T2,T3,T5,其最壞執行時間和周期分別為(5,50),(8,100),(20,200)和(80,500),需要設定Periodic I/O任務的執行周期為50。
分區是航空電子應用中的一種功能劃分。每個分區都具有獨立的數據、上下文和運行環境,分區的優點包括:能夠防止錯誤在分區間傳播,引起系統故障蔓延。能夠將航空應用軟件按照關鍵級別分解成不同的構件,使系統的升級和維護更加容易,大大降低未來航電系統中軟件的開發成本。分區間通信分區間通信是兩個或多個分區之間的通信,是由操作系統來實現的。
分區的調度保證各應用分區在時間上完全獨立運行,互不影響,一個分區內出現任務錯失時限或死鎖不會影響其它分區及其它分區內任務的時間特性,保證系統在高系統利用率下的可調度性。從民機適航的角度,還需要支持分區的動態加入和刪除。
FCOS中分區具有四種工作狀態:空閑態(IDLE)、冷啟動態 (COLD_START)、 熱啟動態 (WARM_START) 和正常態(NORMAL)。任一時刻分區只能處于其中一種工作狀態。
·空閑態(IDLE):在這個狀態下,分區沒有初始化,分區在自己的時間窗口內不執行任何進程,并且沒有資源消耗,但是分配給分區的時間窗口并沒有改變。
·正常態(NORMAL):在這個狀態下,分區內的進程調度是處于激活狀態的,分區內所有的進程都已經創建完畢,并且那些處于就緒態的進程可以立即得到運行,系統處于一個可操作的狀態。冷啟動態(COLD START):在這個狀態下,分區處于初始化階段,進程調度是被禁止的,分區忙于執行各自的初始化代碼。
·熱啟動態(WARM START):在這個狀態下,分區同樣處于初始化階段,進程調度是被禁止的,分區忙于執行各自的初始化代碼。這個狀態類似于冷啟動態,不同的是初始環境是不一樣的,例如不需要復制FLASH中的內容到隨機訪問存儲器(RAM)中。
在分區內的執行體由一個或多個任務組成,每個任務隸屬于特定的分區,分區內的各任務之間并發執行。任務管理主要負責分區內任務的創建、調度和刪除等工作。
FCOS中任務分為按固定頻率執行的周期任務和由事件觸發的非周期任務兩類,操作系統具備對這兩類任務的調度能力。基本調度算法采用優先級搶占調度算法[4],周期任務與非周期任務主要體現在調度算法的調度時機上。目前,關于優先級搶占調度的理論和實踐都比較成熟,在此不再論述。
分區內任務調度相關數據結構:
typedef struct
{
/*分區中任務的優先級位圖*/
Priority_Bit_map*priority;
/*域中任務的就緒鏈表*/
FCOS_TCB task_ready_table
[MAX_TASK_NUM];
}Partition_Task_schedule_control;
操作系統的評估除了前面提到的時間和空間分析外,還需要結合硬件平臺分析系統的終端相應時間,任務切換時間,分區切換時間,任務搶占時間,信號量混洗時間,死鎖解除時間,消息傳遞時間。結合軟件測試評估操作系統的測試覆蓋率,魯棒性測試,壓力測試,故障監控、隔離與恢復性測試[5]。結合應用系統的系統可調度性分析,系統端到端延遲分析,原型系統評估等等。操作系統的評估Benchmark[6]主要有針對底層屬性的Rhealstone,Whetstone,任務屬性的Hartstone,以及針對應用的Holleywell,PapaBench。
1)Rhealstone
Rhealstone方法對操作系統中6個關鍵操作的時間量進行統計測量,并歸一化成Rhealstone指標。主要參數有任務切換時間 (Task switch time), 任務搶占時間(Preemption time),中斷延遲時間 (Interrupt Latency),信號量混洗時間(Semaphore-shuffle time), 死 鎖 解 除 時 間 (Deadlock break time),任務間消息延遲(Intertask message latency)。
2)Whetstone
該方法用來測試計算機性能,主要用來評估浮點型應用,如大部分執行時間(約50%)進行數學計算,且大部分變量為全局變量的應用。
3)Dhrystone
該方法主要用來測試非數值性系統編程的性能影響(如操作系統,編譯器、文字處理等等),該方法適用于沒有浮點操作,大量時間花費在字符串操作,且大部分變量不是全局變量的應用
4)Hartstone
該方法使用不同屬性的任務組來評估操作系統的性能。該方法由以下測試序列組成
*PH序列: 周期任務,和諧頻率(頻率之間成倍關系)
*PN序列: 周期任務,非和諧頻率
*AH序列:非周期任務
*SH序列:帶同步的周期任務
*SA序列:帶非周期處理和同步的周期任務
該項目由一個嵌入式機載系統和地面站構成。機載系統由一個控制卡,一個GPS接收器,一個雙軸差分紅外傳感器,一個無線傳輸器和諸多伺服控制器組成。
控制卡[7]由雙處理器構成,一個處理器MCU0負責導航功能,MCU1負責飛行控制功能。處理器之間使用SPI連接。
地面站由一個無線命令接收發送器和一個通用計算機組成。通用計算機記錄并且控制飛行參數,飛行路線等。PowerPC存儲管理單元提供三種存儲管理機制,一種為Real模式,該模式類似于X86體系中的Flat模式,不具備存儲權限和保護能力;一種為BAT模式,該模式利用處理器提供的8組IBAT指令和DBAT數據寄存器對存儲空間進行管理;一種為段頁模式,該模式利用存儲于存儲器中的頁表進行管理存儲空間。我們分別在BAT模式和段頁模式下,測試存儲空間10 000次讀寫操作耗時,可以看出在BAT模式下,平均花費時間為102.7 μs,而在段頁模式下為 258.3 μs,相差兩倍以上。
近年來,隨著硬件的快速發展,特別是處理器速度的快速提升,為通過綜合各傳統子系統而降低航空電子系統的成本,能耗,重量以及空間等等提供了可能。這種綜合的模塊化航空電子體系結構要求將傳統的的子系統綜合到單一的硬件平臺中,并要求其基礎軟件平臺能夠提供各子系統在時間,空間上的隔離,保證各子系統能夠獨立的運行,且可靠及時的通信。
[1]John regehr,Alastair Reid,Kirk webb.Eliminating stack overflow by abstract interpretation[J].ACM Transactions on Embedded Computing Systems (TECS),2005(4):751-778.
[2]Justin Littlefield-Lawwill,Ramanathan Viswanathan.Advancing Open Standards in Integrated Modular Avionics[J].An Industry Analysis.26th Digital Avionics Systems Conference (DASC),2007:214-225.
[3]HQ AFMC/ENPI.Air Force Open Systems Implementation Guide(DRAFT) [N].1997.
[4]Logan G T.Integrated Avionics:Past,Present and Future[J].Aerospace and Electronic Systems Magazine,2007(22):39-40.
[5]FAA Technical Standard Oder TSO-C153. Integrated Modular Avionics Hardware Elements[N].2002.
[6]Muhammad M.Latif,Ravi Ramaseshan,Frank Mueller.Soft Error Protection via Fault-Resilient Data Representations.In Proc.3rd IEEE Workshop on Silicon Errors[N].2009.
[7]Federal Aviation Adinistration.Guidance for Integrated ModularAvionics (IMA) ThatImplementTSO-C153 Authorized Hardware Elements.FAA Advisory Circular AC 20-145[N].2003.