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

軍事應(yīng)用中深度學(xué)習(xí)的挑戰(zhàn)與機(jī)遇
詳解Object Detection Demo的移植

LabVIEW抽象消息使用教程(上)

HAL庫在嵌入式系統(tǒng)中的應(yīng)用
淺談電磁兼容系統(tǒng)
【北京迅為】i.mx8mm嵌入式linux開發(fā)指南第四篇 嵌入式Linux系統(tǒng)移植篇第六十九章uboot移植

基于機(jī)智云移植STM32L496G代碼移植

評論