Trends in porting and abstractingapplications in military systems-MARIANNE CROWE

在军事系统中移植和抽象化应用程序的趋势-Marianne Crowe

原创:MapuSoft


随着当今军事电子行业的不断发展和复杂性的增加,较旧的技术往往变得过时,从而需要标准化的开发工具。这些复杂的军事应用程序也可能带来许多挑战,包括使特定于操作系统代码在不同的操作系统上运行的挑战。因此,针对该问题的可行的有成本效益和节省资源的解决方法, 包括通过移植和抽象来跨多个平台回收和共享软件


嵌入式行业不断变化和发展,旧技术常常变得过时,并对更标准化的开发工具产生需求。由于军事系统的应用经常是庞大而复杂的,适应快速的创新速度可能会带来巨大的挑战。因此,开发人员在使特定于操作系统的代码在不同的OS(操作系统)上运行, 以及在设计时考虑到不断变化的技术时会遇到障碍。在整个军事和国防系统行业中,跨多个平台回收和共享软件的想法正迅速成为一种流行的思维方式,因为它具有明显的成本效益和资源效率。


一、在新的操作系统平台上回收应用程序

军事系统中的嵌入式软件不断发展, 以适应不断变化的市场需求以及硬件和软件平台技术。这些进步通常会产生新的系统需求,并可能导致某些技术过时,从而有必要进行平台升级或操作系统更改。开发人员需要利用他们现有的软件和知识库,而不是从头开始重写软件, 并放弃开发中做过的投资。


结果,军事行业对将现有嵌入式软件移植到升级平台或新OS上的兴趣日益浓厚。这基本上使开发人员可以“回收”他们的软件,从而消除了昂贵的重写和浪费的投资。


但是,由于每个操作系统在许多方面都存在差异,使为一个操作系统编写的软件在另一操作系统上运行是一项艰巨而耗时的任务,因此容易出错。一个简单的例子就是每个操作系统提供的任务优先级。例如,在标准Linux下,优先级的范围是0到99;对于VxWorks,范围是0到255;对于LynxOS,范围是0到512;对于Solaris,优先级范围是0到169。要想使软件在具有这些不一致的新OS平台上运行,就需要重写和重新组织软件。为了加快这项复杂难懂的任务,开发人员需要一种工具,该工具应能提供熟悉的API,以消除新OS的学习曲线并减少项目的研发时间。该工具应处理有问题的任务优先级变化, 以及其他OS不一致问题,以帮助遗产软件轻松适应新的OS平台(请参见图1)。


图 1:遗留的嵌入式应用程序; VxWorks移植工具, pSOS移植工具, Nucleus移植工具; OS抽象库插件,标准OS界面架构; 主机/目标OS平台 


二、跨OS平台共享应用程序:规划未来

军事系统应用程序通常是大型和复杂的,需要能够相互通信, 并在具有各种操作系统的分布式计算机系统中运行。陆军未来作战系统(FCS)是迄今为止国防部最大的项目,政府问责办公室(GAO)将其描述为“一项前所未有的任务”,“随着对FCS设计需求的了解越来越多,该项目将继续增长。” [1]

例如,最近在《华盛顿邮报》上有关FCS的一篇文章指出,尽管陆军最初估计有3400万行软件,但是由于开发范围的变化,新的预测是6380万行。[2]

尽管需要对设计进行修改,但每次应用程序的技术要求发生变化, 或需要使用新技术时,都要重新配置系统是不符合逻辑的。


鉴于这些问题,整个行业正在迅速意识到需要对未来进行规划。开发人员正在寻求利用OS抽象工具来编写高度可移植的软件,该软件可实现跨多个系统的多个应用程序之间的通信,并且不需要将来进行重写和昂贵的维护。但是,设计内部OS抽象是一项复杂的任务,类似于设计一个全新的OS,该OS需要适应现在和将来的应用程序。这需要大量的开发工作和维护,而这转移了放在开发人员的核心项目上的精力。


很难设计出一个能满足所有应用程序需求, 同时具备所有特性和功能的OS抽象,因此它不依赖底层OS来获得任何特性(例如:printf())。它还需要大量的精力来设计一种抽象,以便在将来扩展特性的同时, 又不丧失现有应用软件的向后兼容性。此外,设计需要考虑到某些API特性和功能的缺少,这些特性和功能仅在某些操作系统上可用,而在其他操作系统上不可用。


真正的操作系统抽象不仅应该抽象API,还应该抽象数据类型、头文件和符号定义。操作系统抽象需要允许快速添加新的操作系统支持,而不必更改现有的应用程序软件。但是,这需要通过在多个操作系统上实施OS抽象解决方案来进行昂贵的测试,以确保它允许应用程序在不同的OS上运行,而无需更改软件。当需要更改软件以将应用程序移动到新平台时,这就完全违背了OS抽象设计的目的。很难知道应用程序将要使用的每个OS(或OS版本),因为这需要对未来进行预测,以便为应用程序需求的所有更改制定计划。也很难正确地预测计划的操作系统是否将始终可用, 且是最新的,也很难计划尚未发布的新操作系统。

 

为了适应未来的需求, 并避免此类复杂的项目,开发人员需要一个COTS OS抽象来来轻松开发可移植软件。抽象需要来允许设计变更, 而不需要重写软件,从而保护软件投资。该抽象工具应该根据对国防和任务系统至关重要的安全关键特性进行设计,同时又不舍弃实时性能(请参见图2)。


图2新的嵌入式应用程序; 嵌入式应用程序(公司内部的抽象); BASE API,POSIX API, OS抽象库插件; 主机/目标OS平台


三、保护OS投资

军事系统开发人员需要利用现有的知识库来消除学习曲线,并通过开发可移植应用程序来保护软件投资。例如,MapuSoftTechnologies的OS Changer和OS Abstractor为开发人员提供了重用软件和适应未来变化的能力。这些产品经过精心设计,可以克服操作系统的不一致性,并使开发可移植代码变得轻松,同时还包括高级的关键性安全和应用程序性能特性。

视频: 如何运行MapuSoft技术公司的IDE集成开发环境AppCOE (Application Common Operating Environment应用程序共同操作环境) 移植VxWorks至Linux


相关阅读

  1. 将软件重复使用纳入公司文化的重要性

  2. 操作系统整合:​管理程序的下一步

  3. RTOS模拟器技术规格

  4. 技术规格书: FreeRTOS移植包

  5. 客户案例研究:加拿大滑铁卢

  6. 客户案例研究: ResMed

  7. 客户案例研究: MQX Embedded

  8. 客户案例研究:意法半导体公司

  9. 产品简介: Linux优化包(Linux OK)

  10. 产品简介:自动从一个操作系统移植到另一个操作系统


MapuSoft Technologies, Inc 样品&购买&技术&演示请咨询代理商:

座机 0755-82565851 
邮件 dwin100@dwintech.com 
手机 156-2521-4151
网站 www.dwintech.com/MapuSoft.html
深圳市南频科技有限公司
D-Win Technology(HongKong) Co.,Ltd

长按此二维码,识别注此公众号来获得售支持,以及最新器件发布,应用手册,参考设计视频,白皮书,成功案例,行业信息-MapuSoft减少时间,力气,成本

首页home 产品product 新品发布news 参考设计ref.d 联系contact 应用笔记app note

 D-Win Technology(HongKong) Co.,Ltd 深圳市南频科技有限公司