论文部分内容阅读
在信息时代潮流当中,嵌入式技术扮演了承上启下的桥梁作用,它和传统的工业控制技术有着密切的联系,又结合了最新的计算机软硬件技术。和传统的桌面系统类似,嵌入式系统也需要能够方便用户二次开发和使用的操作系统,这种操作系统就叫做嵌入式操作系统(embedded operating system)。目前,汽车电控软件趋向于复杂化,大型化;使得传统的前后台程序开发的复杂度大大增加,在分析了工业界存在的面向汽车电子开发的嵌入式操作系统的技术情况和应用情况的基础上,本文提出并实现了符合欧洲OSEK/VDX标准的嵌入式操作系统SmartOSEK,并提出了相应的内核空间优化技术。本文的主要工作集中在如下两个方面:第一,实现了符合OSEK/VDX标准的操作系统SmartOSEK,实现的内核模块包括调度模块,任务管理模块,资源管理模块,中断管理模块。该操作系统具有层次化的结构方式和丰富的外围接口,由多个功能模块组成一个精简内核,并且具有很大的可定制性和扩展性。SmartOSEK在运行时候只需要很少的内存开销(最低<5K),CPU开销(可以运行在低端C51单片机上)。目前SmartOSEK已经被移植到十多款主流嵌入式控制芯片上。在OSEK标准提出的优先级置顶协议基础上,本文提出了面向内部和外部资源的两种不同的优化方法,在操作系统处于混合调度模式下,这种改进显著地减少了调度中资源分配的开销。第二,针对SmartOSEK是一个静态操作系统的特点,我们通过将操作系统内核代码拆分成更小粒度的组件,和外围的IDE结合进行内核配置,实现了内核空间的最小化。和原来的大粒度的同样功能的内核版本相比,减少了48%的空间开销。在任务的代码开销减少方面,通过分析符合XCC1一致类的任务之间的调度关系,操作系统将非并行任务进行堆栈复用,减少了应用程序的空间开销。本文提出了对静态操作系统进行建模的方法,该模型能将静态嵌入式操作系统的不同组成元素进行抽象;在此模型基础上提出了计算任务最小的上下文的方法。为了更好地评估SmartOSEK的空间性能,我们搭建了包括主机,嵌入式MPC555开发板,逻辑分析仪的测试平台,得到了SmartOSEK的最优化空间开销。经研究比较得出,SmartOSEK的内核空间性能已经达到了可以与国外相关的符合OSEK标准的商业操作系统相比的水平。