论文部分内容阅读
随着汽车使用功能的增多,用在汽车控制中的电控单元达到平均每车50个,使得汽车电子软件系统越来越复杂,汽车应用软件开发难度越来越高。为了降低开发难度,20世纪90年代初期,欧洲汽车业界联合推出了OSEK/VDX汽车电子多控制单元的开放式分布系统及接口标准,该标准在规范汽车应用软件的开发上具有重要意义。它可以屏蔽不同电控单元的电气特性,为软件开发者提供统一接口,减少开发成本,缩短开发时间。本文首先介绍了OSEK/VDX标准的各个组成部分,重点研究了标准中操作系统内核(OS)的定义、处理机制以及它提供的系统服务。然后深入分析了嵌入式实时操作系统μC/OS-Ⅱ的工作原理,并与OSEK/VDX OS运行机制做比较。最后针对比较后的结果,对μC/OS-Ⅱ内核进行修改和扩展使其满足OS标准,为用户提供一个开放式的汽车应用软件开发平台。对μC/OS-Ⅱ内核的修改和扩展,主要体现在以下三方面工作:1.为μC/OS-Ⅱ内核建立一张新的任务就绪表。基于新就绪表,改进寻找最高优先级任务算法使优先级顺序相反;改进任务就绪算法使任务数量扩展一倍,使内核在汽车控制过程中可以执行更多任务。2.为μC/OS-Ⅱ内核引入一种优先级项置协议,解决实时系统中普遍存在的优先级反转现象,使汽车控制中的紧急情况能够在规定时间内得到及时处理。3.根据OSEK/VDX标准对报警器管理的说明,以计数器做报警器的底层支持,为μC/OS-Ⅱ内核添加软件定时报警服务功能,减少汽车控制中的事故发生率。在μC/OS-Ⅱ内核修改之前,先将其移植到MC9S12DP256B微处理器上,目的是在内核修改过程中为内核提供运行和测试的环境。针对以上研究成果分别编写测试程序进行验证,所有测试代码都通过系统调试,运行情况稳定,为实际应用打下重要基础。