隨著當今軍事電子行業的不斷發展和復雜性的增加,舊技術往往會過時,從而需要標準化的開發工具。這些復雜的軍事應用程序也可能帶來許多挑戰,包括使特定于操作系統的代碼在不同的操作系統上運行。因此,可行的具有成本效益和資源效率的補救措施包括通過移植和抽象跨多個平臺回收和共享軟件。
隨著當今軍事電子行業的不斷發展和復雜性的增加,舊技術往往會過時,從而需要標準化的開發工具。這些復雜的軍事應用程序也可能帶來許多挑戰,包括使特定于操作系統的代碼在不同的操作系統上運行。因此,可行的具有成本效益和資源效率的補救措施包括通過移植和抽象跨多個平臺回收和共享軟件。
嵌入式行業不斷變化和發展,通常會使舊技術過時,并產生對更標準化開發工具的需求。由于軍事系統應用經常龐大而復雜,適應快速的創新可能會帶來巨大的挑戰。因此,開發人員在使特定于操作系統的代碼在不同的操作系統上運行以及在設計時考慮到不斷變化的技術時面臨障礙。在整個軍事和國防系統行業中,跨多個平臺回收和共享軟件的想法
正迅速成為一種流行的思維方式,因為它絕對具有成本和資源效率。
在新操作系統平臺上回收應用程序
軍事系統中的嵌入式軟件不斷發展,以跟上不斷變化的市場需求,以及
硬件和軟件平臺技術。這些進步通常會產生新的系統需求,并可能導致某些技術過時,因此有必要進行平臺升級或操作系統更改。開發人員需要利用他們現有的軟件和知識庫,而不是從頭開始重寫軟件并放棄在開發中的投資。
因此,軍事工業對將現有嵌入式軟件移植到升級平臺或新操作系統的興趣日益濃厚。這實質上允許開發人員“回收”他們的軟件,從而消除了
昂貴的重寫和浪費的投資。
但是,使為一個操作系統編寫的軟件在另一個操作系統上運行是一項艱巨且耗時的任務,并且有許多容易出錯的陷阱,因為每個操作系統在許多方面都不同。一個簡單的例子是每個操作系統提供的任務優先級級別。例如,在標準Linux 下,優先級范圍從 0 到 99;對于 VxWorks,范圍為 0 到 255;對于 LynxOS,范圍為 0 到 512;對于 Solaris,范圍是 0 到169 個優先級。要讓軟件在具有此類不一致的新操作系統平臺上運行,需要重寫和重組軟件。為了加快這種復雜的任務,開發人員需要一個提供熟悉的API的工具,以消除新操作系統的學習曲線并減少項目的研究和開發時間。此工具應處理有問題的任務優先級變化和其他操作系統不一致,以幫助舊版軟件輕松適應新的操作系統平臺(參見圖 1)。
圖1
跨操作系統平臺共享應用程序:規劃未來
軍事系統應用程序通常龐大而復雜,需要能夠相互通信并在具有各種操作系統的分布式計算機系統上運行。陸軍未來作戰系統(FCS)是迄今為止最大的國防部項目,被政府問責局(GAO)描述為“一項前所未有的事業”,“隨著FCS設計的需求得到更好的理解,它將繼續增長”。
例如,《華盛頓郵報》最近一篇關于FCS的文章指出,盡管陸軍最初估計軟件有3400萬行,但由于開發范圍的變化,新的預測是6380萬行。
盡管需要對設計進行修改,但每次應用程序的技術要求發生變化或需要使用新技術時,重新配置系統是不合邏輯的。
鑒于這些問題,整個行業正在迅速意識到規劃未來的必要性。開發人員正在尋求利用操作系統抽象工具來編寫高度可移植的軟件,該軟件允許跨各種系統的多個應用程序之間進行通信,并且無需將來重寫和昂貴的維護。然而,設計內部操作系統抽象是一項復雜的任務,類似于設計一個全新的操作系統,需要適應現在和未來的應用程序。這需要大量的開發工作和維護,從而將注意力從開發人員的核心項目上移開。
很難設計一個操作系統抽象,其中包含滿足應用程序所有需求的所有特性和功能,因此它不依賴于底層操作系統的任何功能(例如:printf())。它還需要花費大量精力來設計一個抽象,允許將來擴展功能,而不會失去現有應用軟件的向后兼容性。此外,設計需要考慮缺少某些 API 特性和功能,這些特性和功能僅在某些操作系統上可用,而在其他操作系統上不可用。
真正的操作系統抽象不僅應該抽象 API,還應該抽象數據類型、頭文件和符號定義。操作系統抽象需要允許快速添加新的操作系統支持,而無需更改現有的應用程序軟件。但是,這需要通過在多個操作系統上實現操作系統抽象解決方案來進行昂貴的測試,以確保它允許應用程序在不同的操作系統上運行而無需更改軟件。當需要更改軟件以將應用程序移動到新平臺時,它完全違背了操作系統抽象設計的目的。很難知道應用程序將使用的每個操作系統(或操作系統版本),因為這需要預測未來,以便規劃對應用程序要求的所有更改。也很難正確預測計劃的操作系統是否始終可用且最新,也很難規劃尚未發布的新操作系統。
為了適應未來的需求并避免如此復雜的項目,開發人員需要一個 COTS 操作系統抽象,以便輕松開發便攜式軟件。抽象需要允許設計更改,
而無需軟件重寫,從而保護軟件投資。這種抽象工具的設計應具有對國防和任務系統至關重要的安全關鍵功能,同時又不犧牲實時性能(見
圖2)。
圖2
保護操作系統投資
軍事系統開發人員需要利用現有的知識庫來消除學習曲線,并通過開發便攜式應用程序來保護軟件投資。例如,MapuSoft Technologiesí OSChanger和OS Abstractor使開發人員能夠重用軟件并適應未來的變化。這些產品旨在克服操作系統的不一致,使開發可移植代碼變得毫不費力,同時包括高級安全關鍵和應用程序性能功能。
審核編輯:郭婷
-
嵌入式
+關注
關注
5068文章
19019瀏覽量
303286 -
操作系統
+關注
關注
37文章
6738瀏覽量
123190
發布評論請先 登錄
相關推薦
評論