论文部分内容阅读
在工程实践中,嵌入式系统往往有很强的实时性要求,需要嵌入式操作系统提供更好的实时支持,因此,嵌入式操作系统一般都是实时操作系统。随着嵌入式技术应用领域的不断扩展,开发嵌入式应用的实时操作系统平台也得到了越来越广泛的应用,与嵌入式操作系统相关的理论和技术问题也成为了研究和开发热点,特别是保证嵌入式操作系统的实时性以及各类资源的有效管理问题成为了操作系统领域最重要和最活跃的研究课题。在抢占式多任务实时操作系统中,由于任务的并发执行以及对共享资源的使用,必然存在优先级反转的危险,从而会影响到高优先级任务的响应时间。如果不采取措施,引起优先级无限反转,就会导致应用系统崩溃;同时,优先级反转也是应用系统许多不可预知错误的根源。因此,在嵌入式实时系统分析设计时,在实时操作系统层面上缓解优先级反转现象至关重要。 本文以源代码开放,实施优先级可抢占式调度策略的多任务实时操作系统μC/OS-Ⅱ为研究对象。剖析了μC/OS-Ⅱ抢占式调度内核;着重分析了优先级反转产生的原因和影响。对解决优先级反转的优先级继承协议及优先级天花板协议两种设计模式作了深入的研究和分析,提出并论证了优先级继承协议应用于μC/OS-Ⅱ的限制和在μC/OS-Ⅱ中实现优先级天花板协议的可行性。在此基础上,结合μC/OS-Ⅱ的特点,完善了资源天花板优先级的定义;设计了实验模型;结合μC/OS-Ⅱ提供的互斥信号量工具实现了类似于优先级天花板协议的μC/OS-Ⅱ解决优先级反转问题的解决方案。实验结果表明,该方法在保证共享资源互斥访问的前提下将优先级反转的发生有效地限制在一个层次上,降解了优先级反转现象的发生。 最后,对在μC/OS-Ⅱ中实现优先级天花板协议降解优先级反转现象发生的特点和应用限制做了评述。