智能手機(jī)和平板電腦的增長(zhǎng)正在從根本上改變軍事技術(shù)的面貌。與民用生活一樣,商用現(xiàn)貨 (COTS) 手持設(shè)備的強(qiáng)大功能使以前需要更大、更笨重的計(jì)算機(jī)的系統(tǒng)能夠快速、前線訪問(wèn)。例如,堅(jiān)固耐用的手機(jī)和平板電腦現(xiàn)在具有訪問(wèn)關(guān)鍵任務(wù)命令和控制以及通信系統(tǒng)的處理能力,同時(shí)便攜到可以放入口袋。在這些系統(tǒng)中,原始操作系統(tǒng)(OS)和面向消費(fèi)者的應(yīng)用程序被定制版本所取代,這些版本包括使用專有和/或機(jī)密算法的特定領(lǐng)域軟件。
然而,與引入軍隊(duì)的每一項(xiàng)新技術(shù)一樣,手持設(shè)備需要滿足嚴(yán)格的安全性和可靠性要求,并且在預(yù)算緊張的時(shí)代,必須盡可能多地重復(fù)使用現(xiàn)有的軟件和技能。
艾達(dá)在前線
作為一種最初由國(guó)防部(DoD)贊助的語(yǔ)言,Ada在軍事和航空航天領(lǐng)域一直被大量使用。專為長(zhǎng)壽命應(yīng)用而設(shè)計(jì),其安全性、安全性和可靠性的結(jié)合使其成為任務(wù)關(guān)鍵型系統(tǒng)的自然選擇。然而,在過(guò)去,Ada編程傾向于專注于大型軟件系統(tǒng),具有數(shù)千或數(shù)百萬(wàn)行代碼。在瞬息萬(wàn)變的世界中,如何在不影響安全性、安全性或可靠性的情況下,將 Ada 的優(yōu)勢(shì)帶到手持設(shè)備上?
在AdaCore,我們有機(jī)會(huì)找到答案。美國(guó)陸軍與我們接洽,他們希望將現(xiàn)有的Ada應(yīng)用程序用于更大的系統(tǒng),并將其部署在可以在戰(zhàn)場(chǎng)上使用的堅(jiān)固耐用的Android平板電腦上。我們?yōu)檫\(yùn)行Android的ARM Cortex處理器提供了GNAT Pro 7.2交叉開發(fā)環(huán)境,作為移植軟件的工具。
將 Ada 和 Java 結(jié)合在一起
這個(gè)GNAT Pro版本托管在Windows和Linux上,是一個(gè)Ada工具套件,用于使用Ada和Java的混合開發(fā)和維護(hù)Android應(yīng)用程序。開發(fā)人員可以利用 Ada 語(yǔ)言的優(yōu)勢(shì),同時(shí)還可以利用 Android 平臺(tái)提供的 Java 庫(kù)和服務(wù)來(lái)實(shí)現(xiàn)用戶界面。應(yīng)用程序也可以僅用 Ada 編寫,也可以使用 Ada 和其他本地語(yǔ)言的組合編寫。
因此,對(duì)于此應(yīng)用程序,開發(fā)人員可以利用 Ada 及其安全關(guān)鍵屬性和高性能,同時(shí)使用用 Java 編寫的 GUI,以便在現(xiàn)場(chǎng)輕松使用。現(xiàn)有 Ada 應(yīng)用程序的一部分被移植到 Android 上,只需進(jìn)行最少的修改。
GNAT Pro 7.2 包括新版本的 GNATbench,這是將 Eclipse 擴(kuò)展到 Ada IDE 的 AdaCore 插件。除了一般增強(qiáng)功能外,此新版本還包括一個(gè)專用插件,為Android上的混合Ada-Java開發(fā)提供端到端支持。從處理所有項(xiàng)目設(shè)置詳細(xì)信息的特定向?qū)ч_始,用戶只需指定要從 Java 應(yīng)用程序調(diào)用的 Ada 包。
構(gòu)建項(xiàng)目會(huì)自動(dòng)調(diào)用 AJIS(Ada-Java 接口套件)來(lái)生成調(diào)用 Ada 代碼所需的所有 Java 代碼,將 Ada 代碼編譯為從 Java 端引用的共享庫(kù),并使兩者可用于 Java 項(xiàng)目。構(gòu)建器會(huì)自動(dòng)檢測(cè)并處理對(duì) Ada 接口包集或這些包中的 Ada 代碼的任何更改。為了提高性能,如果 Java 代碼已存在,該工具不會(huì)重新生成該代碼。生成的 Java 是高級(jí)的,因此避免了容易出錯(cuò)的直接使用 JNI。此外,Ada 和 Java 代碼完全集成在 IDE 中,例如,允許在編輯器中進(jìn)行導(dǎo)航。最后,通過(guò)普通的 Eclipse/CDT 調(diào)試器 GUI 支持調(diào)試 Ada 代碼。
手持式應(yīng)用程序的開發(fā)正在進(jìn)行中,但該團(tuán)隊(duì)已經(jīng)看到了這種兩全其美的方法的真正好處。從業(yè)務(wù)案例中,他們可以重用現(xiàn)有的 Ada 應(yīng)用程序和組件,并將開發(fā)和培訓(xùn)成本降至最低,從而減少所需的投資,同時(shí)最大限度地提高結(jié)果。
隨著手持式COTS硬件成本的下降及其處理能力的迅速提高,軍事界正在研究手持設(shè)備如何改善操作。正如我們的經(jīng)驗(yàn)所表明的那樣,Ada用于創(chuàng)建安全關(guān)鍵型可靠代碼,Java用于圖形功能,這提供了在更小、更便攜的設(shè)備上將現(xiàn)有系統(tǒng)擴(kuò)展到前線的機(jī)會(huì),而不會(huì)影響安全性或可用性。
審核編輯:郭婷
-
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7662瀏覽量
90785 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
7151瀏覽量
125576 -
平板電腦
+關(guān)注
關(guān)注
4文章
2059瀏覽量
79128
發(fā)布評(píng)論請(qǐng)先 登錄
手持式RFID掃碼設(shè)備功能解析:一機(jī)搞定入庫(kù)/出庫(kù)/盤點(diǎn)


頂堅(jiān)本安型防爆手持終端在油氣行業(yè)的應(yīng)用有哪些優(yōu)勢(shì)?

ADA4807-1 adi

手持式地物光譜儀的優(yōu)勢(shì)解析

NVIDIA RTX 4500 Ada與NVIDIA RTX A5000的對(duì)比
如何將RT-Thread移植到NXP MCUXPressoIDE上

ADA-28F00WG乘法器Marki
單北斗手持終端在無(wú)網(wǎng)應(yīng)急環(huán)境下的優(yōu)勢(shì)

大核桃單北斗手持終端在應(yīng)急救援中的六大優(yōu)勢(shì)

手持式RFID讀寫器可以當(dāng)pda手持終端用嗎

手持式電阻焊電源在現(xiàn)代焊接工藝中的應(yīng)用與優(yōu)勢(shì)探析

RFID手持終端功能介紹
FlexPower PMIC設(shè)備的優(yōu)勢(shì)

評(píng)論