论文部分内容阅读
为解决汽车电子中应用软件大量增加及重复开发问题,欧洲汽车行业开发了一个用于汽车电子的、带有标准接口的开放式系统-OSEK/VDX标准(文中简称为OSEK标准)。OSEK标准体系包括操作系统(OS)标准、通信(COM)标准、网络管理(NM)标准及OSEK实现语言(OIL)标准。OIL(OSEK Implementation Language)标准提供了一种描述应用程序的标准方法,实现了汽车电子控制单元(ECU)应用程序的可移植性。如果一个应用程序用OIL语言进行描述,那么它可以很方便的从一个OSEK平台移植到另一个OSEK平台,几乎不需要做任何修改。但是,OIL语言仅提供了描述应用程序的语法和语义,如果采用手写描述文件的方式开发应用程序,由于OIL语法复杂且繁多,使得程序开发难度加大且容易出错。本文针对OSEK OIL配置器进行研究。首先,论文介绍了OSEK标准的各组成部分,重点分析了其中的OSEK OIL标准,以及如何使用OIL语言对OS系统中的各种OSEK对象进行定义,为使用OIL语言描述应用程序奠定了基础。其次,分析研究了一种开源OSEK操作系统-Trampoline。通过对其内核源代码的深入剖析,详细分析了其内核调度、任务管理、中断管理、警报管理的实现机制,搭建了OIL配置器研究的平台和实验环境。第三,基于XML技术设计了一种图形化的OIL配置器。该配置器使用XML文件作为中间数据存储,避免了直接生成文本格式OIL配置文件导致的程序实现复杂、可扩展性差的问题。不同于现有基于XML技术的OIL配置器设计方法,本文加入了XML Schema文件对应用定义配置数据进行验证,将程序逻辑简化,进一步提高了程序的可扩展性。第四,使用VC++6.0对图形化的OIL配置器进行了实现。测试结果表明,该配置器运行稳定,简单易用,方便了应用程序的开发。最后,给出了一个车窗升降机控制程序应用示例。该程序基于Trampoline的OS和COM,使用本文设计的OIL配置器进行配置,生成了所需的OIL配置文件。根据该配置文件所提供的程序框架,本文对车窗升降机控制程序的各功能模块进行了实现。测试结果显示该控制程序运行正常,表明本文设计的OIL配置器能很方便地将用户的配置转化成应用程序的OIL描述文件,并且具有操作简单、实用性强的特点,对于OSEK应用程序的开发具有广阔的应用前景。