论文部分内容阅读
MQX是一款主要面向工业控制、汽车电子及消费电子等领域实时多任务应用的嵌入式实时操作系统。2009年,飞思卡尔公司半导体公司开始免费开放MQX3.0.1版源代码,同年,苏州大学飞思卡尔嵌入式中心接受其委托,利用ColdFire微控制器为硬件平台开始对MQX原理及应用进行初步研究。2010年以来,飞思卡尔陆续推出了面向工业领域ARM Cortex-M4内核的Kinetis系列微控制器,该系列微控制器具有复杂性高、性能卓越、硬件资源丰富且对运行操作系统软件有良好支持等特点,对MQX提供了更好的支持。同时,MQX也不断发展,目前已经更新至4.0.0版。在此背景下,开展对MQX调度机制、组织框架及驱动模型等问题的深入分析研究,对MQX的应用与推广具有重要意义。本文以Kinetis K系列微控制器为硬件蓝本,对MQX的应用进行研究。通过分析MQX源码,剖析其基于优先级可抢占的调度机制,揭示了MQX的调度实质并给出清晰表述,为应用及进一步深入研究奠定了基础。提出了应用工程框架SD-MQX,该框架实现了使用MQX及无操作系统NOS应用工程的统一,从而使前导启动过程、底层驱动的一致性得到较好的满足。同时,该框架简化了从传统开发模式向使用MQX进行过渡的过程。提出了基于构件的MQX设备分层驱动模型,通过设计接口驱动构件,解决了MQX标准调用接口与底层驱动构件的对接问题,有效地实现有无操作系统情况的底层驱动的统一。基于对硬件抽象层的研究,提出了一种MQX跨平台的简捷移植方法,并结合Cortex-M4处理器架构的特点在K60N512微控制器上进行了实现和性能测评。最后,设计了基于MQX的简易数码相框系统作为应用实例。鉴于MQX在国内的推广为时尚短,相关研究较少,本文深入分析与研究了MQX的调度机制、组织框架、驱动设计和系统移植等基本问题并给出了解决方案,有助于降低MQX的开发难度,缩短开发周期,提高软件质量,为MQX应用开发提供范例。