操作系统ARINC653标准符合性验证方法的研究
第41卷第4期2011年7月航空计算技术
Aeronautical Computing Technique
Vol.41No.4Jul.2011
操作系统ARINC 653标准符合性验证方法的研究
仝
敏,徐晓光
(中国航空计算技术研究所,陕西西安710068
)
摘
要:ARINC 653标准是一种国际流行的多分区操作系统的接口标准,是否符合ARINC 653标
以及上层应用是否丰富的一个准是衡量一个嵌入式实时多分区操作系统是否符合国际主流标准,
重要因素。如何验证多分区操作系统是否符合ARINC 653一直是嵌入式实时多分区操作系统测基于ARINC 653Part 3测试标准验证框架的实用多试的重点和难点。提出了一种采用C /S结构、
分区操作系统符合性验证方法,方法不需要对操作系统源码进行修改,并且可以根据测试项排序连续测试。实验证明了验证方法的有效性和准确性。关键词:ARINC 653;操作系统;符合性验证中图分类号:TP311
文献标识码:A
文章编号:1671-654X (2011)04-0070-05
Research on Conformity Test Method of ARINC 653Specification
TONG Min ,XU Xiao-guang
(Aeronautical Computing Technique Research Institute ,Xi'an 710068,China )
Abstract :ARINC 653standard is an international prevalent interface standard which applied widely on multiple partition operation systems.To be consistent with ARINC 653is a key point to the popularity of a real-time operating system and the enrichment of related applications a.It is important and difficult to find a way to test a operating system whether it is consistent with ARINC 653,C /Sstructure conformity test method of ARINC 653is proposed in this paper ,it is based on the typical compliance demonstration in ARINC 653Part 3,and it does not need to modify the code of operating system and can run test items orderly and continuously.Finally ,validity and veracity of the conformity test method is proved through ex-perimentations.
Key words :ARINC 653;operation system ;conformity test
引言
ARINC 653是针对新一代航空电子系统高度综合化模块化的需求而提出的一种多分区操作系统接口标
准,它从开放性、时间/空间确定性、可靠性、安全性、透明性、应用软件的可移植性、可重用性、可升级性等方面都明确定义了综合化航空电子系统对机载嵌入式操作系统的需求和解决机制。目前,国外操作系统厂商是否纷纷推出满足ARINC 653标准要求的操作系统,符合国际主流标准以及上层应用是否丰富是决定一个操作系统生命力的至关重要的因素。
本研究有助于提高对ARINC 653服务理解的准确性、提高测试的可管理性、测试的效率和质量,从而形成对操作系统产品的有效评价具有重要的意义。
收稿日期:2010-12-30作者简介:仝
修订日期:2011-04-02
1
1.1
研究背景
ARINC 653标准
Intergrated Modular 综合化模块化航空电子(IMA ,
Avionics )系统在带来成本降低、性能提高的同时,也为设计者提出了新的难题和挑战,如何让多个任务共享处理器和网络资源,保证任务运行的确定性,隔离任务之间的故障传播等都成为综合化航电操作系统需要解决的问题。
ARINC 653是针对现作为ARINC 系列标准之一,
代飞机对综合化航电系统的需求而提出的一种多分区
操作系统接口标准。ARINC 653最早提出于1997年,Applica-其目标是通过抽象的应用运行接口(APEX ,tion /EXecutive)和时间/空间分区管理,改变传统的航
基金项目:航空科学基金项目资助([1**********])
敏(1984-),女,陕西宝鸡人,主要研究方向为嵌入式实时操作系统。
2011年7月仝敏等:操作系统ARINC 653标准符合性验证方法的研究·71·
空电子嵌入式软件系统相互独立、应用软件与操作系统之间紧密耦合的运行方式,从而提高航空电子软件的可重用性。ARINC 653通过定义APEX 接口和基于标准接口的层次化体系架构,形成了如图1所示的IMA 软件结构。位于操作系统和应用软件之间的通用APEX 接口是标准中最为重要的接口,该接口为应用程序提供了一系列的服务,包括分区管理、进程管理、时间管理、存储管理、分区内通信、分区间通信和健康通过这些服务将软件与硬件有效隔离,极大地监控等,
[1]
提高了综合化航电系统的可移植性和可重用性。
指其在功能、数据控制、异常处理等方面也要符合标准规范。是否符合国际主流标准以及上层应用是否丰富是决定一个操作系统生命力的至关重要的因素。由于标准接口是开放式体系结构的核心,标准符合性也成为基于开放式体系结构的机载操作系统的关键指标。
如何验证多分区操作系统是否符合ARINC 653一直是操作系统符合性验证的重点和难点,针对操作系统ARINC 653标准符合性验证方法的研究,有助于提高我国自主知识产权的机载嵌入式实时操作的质量。
2
2.1
ARINC 653符合性验证方法
ARINC 653符合性验证标准
ARINC 653Part 3测试规范目前以基本服务的功
能测试为主,不包括对扩展服务的测试,以及性能测试和配置项测试。ARINC 653Part 3中定义了对于Part 1中所规定的基本服务的API 的符合性测试,其测试用例范围涵盖了基本的分区管理、进程管理、时间管
图1
基于ARINC 653的开放系统体系结构
内存管理、分区间通信、分区内通信、健康监控等七理、
API 语大类基本服务,验证操作系统产品在数据结构、法、服务语义等方面与标准的一致性,以便更好地支持
应用程序的可移植性和可重用性。
ARINC 653Part 1中详细定义了APEX 的各种服
每个APEX 服务的语法以ANSI 务和通用的数据类型,
C 语言形式进行说明。服务描述中只确定数据类型名称、服务名称、参数名称和参数的顺序,而忽略过程的
实现。ARINC 653规范Part 3与Part 1所定义的每个服务一一对应,描述了服务的测试需求。Part 3从正常输入的功能测试和异常输入的鲁棒性测试两个方面定义了符合性测试用例。每个测试用例均按标准模板包括测试编号、测试目的、所覆盖的服务编号、被描述,
测服务类别、主要的环境变量、测试的主要步骤、预期输出结果、以及测试的假设条件等说明。
下面以分区服务SET_PARTITION_MODE为例来说明,图2显示了Part 3中对服务执行的各种需求和条件的进一步分析。图2(a )描述了追踪的SET_PAR-TITION_MODE服务需求。根据服务的实现逻辑描述,针对各个判定条件(测试断言)设计测试用例,如图2(b )所示,在所定义的7个测试用例中5个(0010 0040)是针对正常输入的检测,2个(0050,0060)是对异常输入的测试(即鲁棒性测试)。图2(b )中的每一条断言都映射为一个测试用例,并描述了相应的测试步骤,图2(c )显示了测试用例0060的设计描述和测试过程描述,每个测试用例均按标准模板描述,包括测试编号、测试目的、所覆盖的服务编号、被测服务类
分区是ARINC 653的核心概念,一个分区是一个
独立的应用环境,由数据、上下文关系、配置属性和其他项组成,所有分区共享系统资源,分区的运行要满足时间和空间的要求。ARINC 653机载实时操作系统与一般的操作系统的最大区别就是时间、空间隔离技术,其目的是有效保证各项实时任务的时间、空间的确定性,有效隔离分区之间错误的影响。
目前ARINC 653主要由三个部分组成:Part 1:基
[1]
定义了56个基本的APEX 服务;Part 2:扩本服务,
[2]
展服务,补充了文件系统、外部事件等APEX 服务;
Part 3:符合性验证规范,用于验证操作系统是否符合Part1和Part2服务规范要求[3]。1.2
标准符合性验证
目前,国外操作系统厂商纷纷推出满足ARINC
653标准要求的操作系统,如WindRiver 公司的vx-works AE653,Green Hill 公司的Integraty 等,我国也推出了自主知识产权的机载嵌入式操作系统,并参照ARINC 653制定了国家军用标准GJB 5357。操作系统是机载设备的核心软件和基础软件,具有高安全性、高确定性、强实时性、良好的开放性和可升级性等方面的特殊要求,需要进行充分而全面的测试来保证其质量。软件的标准符合性验证就是测试开发的软件其接口或功能模块是否符合特定的软件标准或者规范,这里所说的符合性除了形式上一致之外,还
·72·航空计算技术第41卷第4期
别、主要的环境变量、测试的主要步骤、预期输出结果、以及测试的假设条件等说明。每个服务还定义了一个作为一个简化的测试用宏测试用例(Service Macro ),[3]
例描述,如图2(d )所示。
图2Part 3符合性测试需求
2.2验证方法
根据嵌入式实时多分区操作系统的特点和
ARINC 653Part1标准中APEX 接口服务,图3给出了典型的标准符合性验证过程
。
并管理与被测操作系统API 之间试用例的运行环境,
[4]
的通信。
经过对嵌入式实时操作系统和ARINC 653标准的深入研究,本文设计了一个基于上述验证框架的主机/目标机结构的测试方法,主机/目标机的交叉验证环境有助于用户更友好地选择测试用例并获取测试结果。图4给出了这种验证法方法的体系结构示意图。
图3ARINC 653标准符合性验证框架
从图3中可以看出,符合ARINC 653Part1标准的操作系统和符合ARINC 653Part3的测试工具是两个独立的软件,可以编制基于ARINC 653Part 3的测试用例代码,并与被测操作系统的头文件、配置文件等进行编译链接,生成可执行的测试用例程序。还可以根据标准制定测试计划,测试平台执行测试计划,提供测
图4
验证体系结构
从图4可以看出,验证平台主要由两部分组成:主
目标机端和目标机端。主机端用于和用户进行交互,
2011年7月仝敏等:操作系统ARINC 653标准符合性验证方法的研究·73·
机端用于运行测试程序,两部分共同完成操作系统ARINC 653标准的符合性验证。
使用该方法进行操作系统符合性测试的用户通过主机端界面选择要执行的测试项(测试项名和待测试接口一一对应),以及哪些测试项需要显示测试日志信息。当测试程序运行完毕,用户通过主机端界面的显示信息获取测试结果,如果在选择某测试项时选择了显示测试日志信息,该记录信息会一并显示,测试日志信息的显示有助于测试程序发生错误时用户定位。
在用户选定的测试项中,有些测试项之间相互有影响,有些测试项对其他测试项没有影响,因此测试程序的运行顺序就很重要,验证平台的主机端能够确定哪些测试项可以顺序运行,哪些测试项必须单独运行,从而将测试项组织成一系列独立的测试序列,测试序列相互间没有影响。对于每个测试序列,主机端生成一个包含待执行测试项列表的头文件,作为验证程序运行的必要条件。
验证平台的目标机端包含ARINC 653Part3标准要求的所有的测试项以及待测试的操作系统,测试程序作为应用运行在符合ARINC 653标准的操作系统分区内。
ARINC 653支持分区间通信,验证平台要对分区间通信的APEX 接口进行测试,因此就需要有一个配合测试的分区发送和接收端口信息。当测试用户选择
并在测试程序运行到测试项生成测试相关头文件后,
目标机之前,需要为操作系统配置:两个分区(master-Partition 和auxPartition ),masterPartition 运行测试程auxPartition 配合测试。序,
整个验证平台运行步骤为:用户选定的测试项后
主机端生成包含测试项的头文件(图4中第1步),主机端将生成的包含待执行测试项的头文件与目标机端测试程序进行编译链接(图4中第2步),与此同时对于每个主机端程序,目标机端生成一个或多个可执行
主机端组件并可以被主机端组件触发。生成完成后,程序激活目标机端的任务独立运行(图4中第3步)。
测试程序将一次执行用户选择的测试项,如果指定打开了显示测试日志信息,那么在测试过程中将显示测
将输出测试结果给试日志信息。当所有测试结束后,
用户(图4中第4步),测试结果可以输出到文件或者
按照打印信息输出。
区操作系统原型上,验证这两个操作系统对ARINC 653标准的符合性。验证结果的每个测试项输出格式:“Test <TEST_NAME>result :OK /FAILED”。为
3.1对AE653的测试
测试前需要对AE653的配置表进行配置。本次测试共选择27个测试项,通过23个,失败4个,通过
具体测试结果如表1。率85.18%,
表1
序号[***********][***********][1**********]
对AE653的测试结果
结果FAILED OK FAILED FAILED FAILED OK OK FAILED OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK
测试项
T_API_PART_220_0010T_API_PART_230_0010T_API_PART_230_0040T_API_PART_230_0050T_API_PART_230_0060T_API_PROC_210_0011T_API_PROC_210_0012T_API_PROC_220_0011T_API_PROC_220_0012T_API_PROC_230_0011T_API_PROC_240_0010T_API_PROC_240_0013T_API_PROC_240_0016T_API_PROC_240_0020T_API_PROC_240_0023T_API_PROC_240_0026T_API_PROC_240_0030T_API_PROC_240_0040T_API_PROC_240_0050T_API_PROC_250_0010T_API_PROC_250_0020T_API_PROC_250_0030T_API_PROC_250_0040T_API_PROC_270_0010T_API_PROC_270_0020T_API_PROC_270_0040T_API_PROC_270_0050
3.2对自主开发的嵌入式实时多分区操作系统原型
的测试
为了进行比较,对自主开发的嵌入式实时多分区操作系统(简称:自主系统),选择和AE653测试时相同的27个测试项进行测试。对配置表配置完成后即可运行测试项,通过22个,失败5个,通过率81.48%,具体测试结果如表2。
本次测试仅选择Part3中的27个测试项,如果时间充足,可以对所有的测试项进行测试。在验证测试过程中,仍有部分测试项不能通过,可以根据测试结果和测试显示信息分析失败或发生错误的原因。
3ARINC 653符合性验证实例
基于上述的验证方法,作者开发了一个简单的验证环境,并构造符合ARINC 653Part3的测试用例,现在将它应用于AE653和自主开发的嵌入式实时多分
·74·
表2
序号[***********][***********][1**********]
对自主系统的测试结果
结果FAILED OK FAILED FAILED FAILED OK OK FAILED OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK
航空计算技术第41卷第4期
测试项
T_API_PART_220_0010T_API_PART_230_0010T_API_PART_230_0040T_API_PART_230_0050T_API_PART_230_0060T_API_PROC_210_0011T_API_PROC_210_0012T_API_PROC_220_0011T_API_PROC_220_0012T_API_PROC_230_0011T_API_PROC_240_0010T_API_PROC_240_0013T_API_PROC_240_0016T_API_PROC_240_0020T_API_PROC_240_0023T_API_PROC_240_0026T_API_PROC_240_0030T_API_PROC_240_0040T_API_PROC_240_0050T_API_PROC_250_0010T_API_PROC_250_0020T_API_PROC_250_0030T_API_PROC_250_0040T_API_PROC_270_0010T_API_PROC_270_0020T_API_PROC_270_0040T_API_PROC_270_0050
1)除了开发错误,测试不通过的原因还可能是由于验证程序开发人员和操作系统开发人员对ARINC 653标准的理解不一致造成;
2)本文的方法可以用于验证不同的嵌入式实时多分区操作系统;
3)测试结果明显地标识出对应的APEX 接口功能是否通过测试或者发生错误,用户可以根据测试显示信息分析失败或发生错误的原因。
本文提出的方法对验证嵌入式实时多分区操作系统的标准符合性具有适用性、有效性、准确性,测试程序可以随着对标准理解的不断深入进行改进。参考文献:
[1]Airlines Electronic Engineering Committee.Avionics Application
.Software Standard Interface Part 1-Required Services [S ]2551Riva Rode ,Annapolis ,Maryland 21401-7435:ARINC ,March 7,2006.
[2]Airlines Electronic Engineering Committee.Avionics Application
Software Standard Interface Part 2-Extended Services [S ].2551Riva Rode ,Annapolis ,Maryland 21401-7435:ARINC ,August 28,2006.
[3]Airlines Electronic Engineering Committee.Avionics Appli-cation Software Standard Interface Part 3-conformity test specification [S ].2551Riva Rode ,Annapolis ,Maryland 21401-7435:AR INC ,August 19,2005.
[4]Skysoft Portugal S A.AVT A6653-1User Manual [Z ].A-pril 12,2007.
[5]牟明,刘群,周敏刚.航空嵌入式软件测试环境确认方法
J ].航空计算技术,2011,41(2):77-79.研究[
4结论
由上述对AE653和自主开发的嵌入式实时多分
区操作系统的验证实例的结果分析发现: