论文部分内容阅读
操作系统负责控制和管理计算机软硬件资源,并且合理地组织程序运行与各类资源的共享。由操作系统中的调度算法处理与分配这些任务,使其能够有序执行。在调度过程中,通过处理对象的实时性不同将调度分为实时调度和非实时调度。实时调度主要调度的是有截止期限的实时任务,而非实时调度更关注CPU的利用率与吞吐率。随着各类应用需求的提高,原先的非实时任务具有了低延时与快速响应的需求。这样的需求使得非实时调度无法满足现有的应用,而使用实时调度又会难以满足其高利用率的要求。因此在解决这类新增软实时的周期性任务时,如何权衡延时、吞吐率、中断响应和信道利用率等各个因素,对研究调度算法有着重大意义。本文提出了一种新的非实时调度算法“资源预留的时间确定性循环调度”Resource Reserved Time Deterministic Cyclic Scheduling(RRTDCS)。这是一种离线缓存预分配式的调度。这种调度方法是一种结合了时间预留与优先级策略的混合调度算法。该算法可以针对不同的任务集进行算法上的修正,可选用通用的方法或专门针对高压条件的方法。并且能够适应当前调度环境对自身调度过程进行优化,使得在动态分配时间间隔的同时保证任务调度规律的确定性。RRTDCS相比经典的循环调度执行方法,更加具有灵活性,能够保证高利用率条件下任务可行的调度并执行。并且其周期性的循环策略减少了任务调度过程中产生的任务切换或抢占带来的额外时间开销。本文使用Matlab进行模拟仿真,建立RRTDCS调度模型,并进行测试。同时也模拟了当下主流的实时调度方案进行比较。主要针对延迟、周期性任务的可完成度进行测试,实验结果表明RRTDCS有较好的可调度性,能够突破经典三任务集调度模型的调度临界条件(≤0.78),使得含个任务的任务集可调度性突破CPU利用率之和,即(?)。并且能以不同表现形式和调度模式适配不同测试任务集,从而得到延迟和可完成度的平衡,达到更好的服务质量。