基于RTLinux的軟件無線電偵察預處理系統
2.嵌入式實時Linux
許多嵌入式系統要求能預測、可限定響應時間地響應外界事件,也就是有實時性的要求。用于嵌入式場合的實時操作系統就是嵌入式實時操作系統,此類實時系統包括自動控制、數據采集和信號處理等系統。一般“實時”的含義是指對來自外界的事件必須在可預測的、相對短的時間段內得到響應。實時系統一般分為2種類型:軟實時系統和硬實時系統。軟實時系統指系統整體吞吐量大或者整體響應速度快,但是不能保證在規定的時間內完成規定的任務。硬實時系統指任務必須在規定的時間內正確的完成。
嵌入式實時系統有很多,這里只介紹實時Linux系統。Linux本身不是一個是真正的實時操作系統,通用的Linux操作系統有3個不利于實現實時性的弊端:中斷封鎖時間過長;非搶占式Linux內核;耗盡式、機會均等的進程調度策略。但是它已經有幾個增加的選擇可以給基于Linux的系統提供實時特性。其中,最常用的辦法是雙內核相結合,把一個通用操作系統作為一個任務運行在一個實時內核上。通用操作系統提供磁盤讀寫、網絡及通訊、串/并口讀寫、系統初始化、內存管理等功能,而實時內核則處理實時事件的響應。雙內核策略充分兼容標準的Linux,而又采用一種不干擾原Linux的方式來增加了實時功能。
RTLinux(RealTimeLinux)是一個嵌入式硬實時操作系統,RTLinux實現了一個小的實時核心,僅支持底層任務創建、中斷服務例程的裝入、底層任務通信隊列、中斷服務例程(ISR)和Linux進程。原來的非實時Linux核心作為一個可搶先的任務運行于這個小核心之上,優先級最低,隨時會被高優先級任務搶占。用戶可自行編寫調度程序,它們可實現為可加載的核心模塊;已實現的調度程序有:基于優先級的搶占式調度和EDF調度;基于優先級的調度使用“單調率算法”,它直接支持周期任務。RTLinux是硬實時系統,系統響應速度可達微秒級。
3.RTLinux預處理系統
我們采用RTLinuxv3.0來開發預處理系統。從資料上看,RTLinuxv3.0為某些嵌入式處理器提供低于10μm的中斷響應時間(最差情況),為標準PC提供低于20μm的中斷響應時間(最差情況)。為了進一步驗證RTLinux是否滿足項目實時性能的要求,我們對它的實時性能指標進行了測試。由于在項目中主要的技術指標是中斷響應時間,我們采用并口中斷的方法進行測試中斷響應時間。在PII300MHz的PC機上做一個并口中斷卡,每10μm中斷一次,測試中斷響應時間,結果如表1所示。從測試結果可以看出,RTLinux具有很好的實時性。

采用RTLinux的預處理系統還需要編寫設備驅動程序。按照在Linux下編寫驅動程序的規則編寫,編寫以下驅動程序:(1)對設備初始化和釋放;(2)把數據從內核傳到硬件和從硬件讀取數據;(3)讀取應用程序傳遞給設備文件的數據和回送應用程序請求的數據;(4)檢測和處理設備出現的錯誤。
如圖3所示,在相應的硬件基礎上,我們加載RTLinuxv3.0操作系統、設備驅動程序和預處理程序,就組成了一個預處理系統。在整個偵察系統的性能調試中,預處理部分經測試運行效果良好,并滿足實時性要求。

四、結束語
嵌入式實時操作系統是源碼開放、系統可裁減的,可以根據處理器的和硬件的類型進行配置,精簡了內核,達到最簡最優的系統,使系統具有很好的實時性。嵌入式實時Linux操作系統運行于高速的微處理器之上,隨著微處理器的快速發展,處理速度幾乎可以和DSP相媲美。作為操作系統,它使用戶不需和硬件打交道,利用操作系統提供一些標準的接口,可用高級語言來編寫程序,縮短軟件開發周期,降低軟件開發難度,并且大大提高了程序的可移植性和擴展性。所以用嵌入式實時Linux操作系統來代替DSP來實現預處理,可以大大提高系統的靈活性和軟件的可移植性,便于系統的維護和升級換代。因此采用RTLinux預處理的軟件無線電通信偵察系統具有很大的優越性。更為重要的是,Linux源碼開放的,在該操作系統上開發的程序具有自主知識產權,保密性好,更適應于軍用軟件無線電通信偵察設備。
評論