您好, 访客   登录/注册

基于特定领域建模的综合航电分区级元模型研究

来源:用户上传      作者:

  摘要:针对当前综合模块化航空电子系统(IMA)开发中存在的问题,提出了一种基于特定领域元模型的综合航电分区级系统建模方法。通过分析提取航电系统分区内核对象特性及相互间联系,采用基于面向领域的元建模分析方法,构建了综合航电分区级通信的元模型,通过建模工具将元模型解析生成了面向领域的元建模语言。通过实例分析验证,该建模语言接近ARINC653标准对于分区内核对象的定义,具有较好的可理解性、易用性,可显著提高航电系统的开发效率,为基于元模型的综合航电系统建模方法奠定基础。
  关键词:综合航电;领域建模;元模型;通用建模环境
  中图分类号:TP391.9
  文献标识码:A
  随着计算机技术、航空技术的不断发展,综合化和模块化成为航空电子系统软件发展的总体趋势,新一代的航空电子系统已经演变成高度集成的综合模块化的系统,为了保证综合航电系统的高安全性、高可靠性,ARINC653[1]系统提出了分区操作系统的概念。在系统的设计和实现过程中,传统的开发测试方法已不能适应日益增长的软件系统规模和复杂性需求,为实现系统的先期验证,应采用各种分析、建模的方法在系统设计初期保证系统的功能验证,降低系统的开发成本,确保系统的功能需求和非功能需求的正确實现。
  构建模型是研究复杂系统的主要方法,采用基于元模型的建模方法,可以将综合航电系统的分区操作系统特性抽取出来,建立平台无关的元模型(PIM)[2],使其适应不同的软件环境。研究了综合航电系统分区级内核对象的特征,设计了分区级通信软件的元模型结构,构建专业技术人员适用的图形化建模元素,从模型构建及使用的角度分析了综合航电分区级建模语言的设计、实现与应用。
  1 MDA与元模型
  模型驱动构架(model driven architecture,MDA)[3]是由对象管理小组(object managementgroup,OMG)提出的一套以模型为中心的软件设计开发方法,其主要思想是在软件开发整个生命周期内,使用高度抽象的模型作为开发核心,使程序设计人员将设计中心转向模型,将设计与实现分开。MDA从领域问题进行需求捕获、分析、再到模型设计以及实现最终的系统平台,每个阶段都对应相应的模型。
  元建模( MetaModeling)[5,6]是MDA的重要组成技术之一,以模型为核心,通过建立描述领域特征的元模型来实现建模语言的定义。元建模是一种模型集成化的工程分析方法,其本质就是在特定领域内抽象该领域的元模型。实践表明,利用元建模技术可以简化建模语言的定义过程,大幅度提高软件开发效率,满足大量的建模需求。元模型是描述模型的模型,主要用于描述特定领域的模型,是模型的更高一级抽象,对如何建模、模型定义、模型间集成和互操作等信息作出了描述[7]。
  关注的重点在于构建系统的元模型。在分析研究综合航电分区级通信机制的基础上,采用GME元建模工具来构建综合航电分区级元模型。
  2 综合航电系统分区内核对象特性
  综合航电系统(IMA)[8]分区由一个或多个进程组成,各进程之间为实现其分区特性的功能和实时要求并发执行。分区级通信是指处在同一分区内的进程之间的通信,IMA中数据交换是通过内部通信机制,不需要使用模块或内核的服务,主要通过缓冲区、黑板、信号量和事件等四种通信机制来实现。缓冲区和黑板被提供用于一般进程的通信,而信号量和事件提供进程间互斥和同步的功能。所有分区内消息传递机制必须确保原子消息访问(即部分写入的消息不能被读取)。
  (1)缓冲区Buffers
  缓冲区支持多个源和目的之间处理单个消息类型的进程通信,允许设置消息队列,消息在缓冲区内具有排队方式(FIFO和优先级队列)。缓冲区的管理以及其存储消息所需内存空间由系统构建时定义的分区内存分配。缓冲区内,消息可以携带不同数据,但是在传送期间内不允许覆盖先前数据。O/S允许缓冲区在消息队列中存储多条消息。
  缓冲区的属性主要有进程队列、缓冲区内单一消息的大小、缓冲区整体大小。
  (2)黑板Blackboards
  黑板与缓冲区类似,但是黑板只能携带单个消息,所以黑板无消息排队机制,写入黑板的消息将被O/S保留,直到此消息被新的消息覆盖,这一机制允许发送过程中随时显示消息,并且可以随时接受访问最新消息的进程。进程可以读取黑板上的消息、设置并显示消息或者清除消息信息。
  黑板的属性主要包括黑板所携带消息的大小、黑板状态。
  (3)信号量Semaphores
  ARINC653中定义的信号量是计数信号量,与进程和缓冲区的创建一样,创建信号量所需的内存空间将在系统构建时定义的分区内存中分配,通常用于提供对分区内共享资源的受控访问。信号量存在于分区内,其属性包括进程队列、信号量最大值、信号量当前值。
  (4)事件Events
  事件被用于控制进程同步执行,进程通过事件通知保证进程之间有序执行,防止因为某些不可预测的原因导致进程陷入停滞状态,事件允许通知可能等待某处理条件发生的进程。
  事件的主要属性包含进程队列、事件当前状态、事件信息。
  3 分区级元模型的设计
  3.1 元模型设计
  综合航电分区级元模型是机载操作系统分区级通信过程中的共性、基础元素的抽象集合,通过建立其元模型,可以提供对其内核对象的统一理解和开发规范,实现分区级数据对象间的信息资源共享和重用。ARINC653中定义的内核对象之间的关系主要在于建立进程与信号量、事件、缓冲区、黑板之间的关系。
  综合航电分区内的通信是指属于同一个分区的进程之间的通信,其中缓冲区和黑板实现一般的进程间的通信和同步,信号量和事件保证了进程之间的同步,必须保证所有的分区内通信信息在写入信息的时候是无法读取信息的,即信息是原子访问的。
转载注明来源:https://www.xzbu.com/8/view-14806384.htm