avatar avatar 我的文献 时间可预测实时调度器研究 作者 马运南 单位 中国科学技术大学 导师 李曦 关键词 实时操作系统; 服务体/执行流; 任务模型; 时间可预测; 虚拟时限; 资源访问
摘要
随着航空系统、工业控制、通信电子和军工等领域的发展,操作系统不仅仅关注运算结果的正确性,还要求运算结果输出的实时性和系统的可靠性。实时系统由于其实时性、任务行为可预测性以及高可靠性等特点成为在制造业领域操作系统发展的必然趋势。实时系统首先要保证任务满足自身的时限约束,系统的实时性取决于任务否能在严格时间约束下准确完成计算并返回结果。通常任务超时将导致出现重大错误或者不可信失效。多任务系统中任务调度提供了任务间系统资源分配能力,根据内存资源、处理资源或者时间资源等安排任务执行顺序。在实时系统中,任务调度直接影响系统实时性。因此实时调度器对于实时系统任务调度至关重要。随着流水线与分级存储等高性能体系结构的出现,指令乱序执行和大量并发行为提高了运算效率,但是使得分析任务执行的时间特征更加困难。实时任务的功能和其完成时间共同影响系统行为的时间属性,因此除实时性之外,实时任务调度还需要保证任务行为具有时间可预测特性。实时系统中多任务互斥访问临界资源时,可能因高优先级任务与低优先级任务竞争同一个资源而等待,这种等待延迟是由优先级翻转产生的。为了避免优先级翻转问题,需要在任务调度与管理模块中提供资源访问控制机制。本文依据上述实时调度三点要求,分析服务体/执行流模型(SEFM)的串行处理与通信部分时间确定性特征,对已有的MiniCore实时操作系统进行改进,提高系统的实时性和时间可预测性。本文主要工作内容有三方面:(1)从实时调度算法、系统任务模型、通信机制、时间约束规则和资源竞争控制角度出发,分析了SEFM相对于传统操作系统模型在时间确定性上的优势。SEFM模型中任务可以拆分为协作式服务,通过同步消息推送机制使执行流在串行服务间转移,将任务间通信转化为服务间消息推动,避免了通信双方交汇过程增加通信时间确定性。(2)EDF是单核上最优的任务级动态调度算法,因此以EDF与SEFM为基础改进实时调度器,对调度器就绪队列、任务管理与任务调度的接口、算法和基本数据结构进行实时性改进。(3)分析了实时调度中的任务完成时间可预测问题,以完成时间可预测算法EDZL与SEFM模型为基础提出了服务虚拟时限规则,通过理论分析证明了服务粒度的时间可预测性。基于虚拟时限规则、任务-服务模型与同步消息推送机制,对实时调度器进行时间可预测性改进。同时编写了一个周期性任务集作为测试用例,实验结果表明可预测实时调度器将任务集完成时间可预测性能提升了28.5%,任务集总周转时间降低了67%,提高了系统的实时性与可预测性。(4)为了减少任务资源等待延迟,解决优先级翻转问题,降低系统上下文切换次数,引入了PreCP资源栈协议。通过使用胜者树改进就绪队列与任务搜索算法,减少了任务调度时间开销。通过调度器实时性与可预测性改进方案的应用,基于SEFM的MiniCore操作系统中任务周转时间大为减小,并且任务完成时间可预测特性也有所提高。
下载 cnki {{liketext}}
©2018 - iData {{ message }} 关闭