Page 354 - 《软件学报》2020年第11期
P. 354

曾理宁  等:一种基于动态需求边界的混合关键级作业调度算法                                                   3669


                    在图 5 和图 6 中,x 轴表示系统负载;y 轴表示作业集的完成率,为 20 次运行结果的平均值.可以看出,CSDDB
                 在作业集的完成率方面具有较好的性能.特别是在系统负载较高时,OCBP 和 CaP 的完成率保持在 17%左右.这
                 意味着几乎只有最高关键级的作业完成,但 CSDDB 的完成率仍能保证 30%左右的作业能够完成.这是因为
                 CSDDB 能够通过松弛时间把关键级切换尽可能地延后,在整个运行过程中,能够满足更多的作业完成.显然,在
                 作业的完成率方面,CSDDB 具有明显的优势.
                    在实际的应用中,作业完成率性能的优势对于一个系统而言至关重要.特别是在当今的嵌入式系统中,正确
                 性不再是系统运行的唯一目标.在很多情况下,低关键级作业的完成能够为系统带来很多的优势,比如使用者的
                 体验性等.因此,在保证系统基本的安全性、可靠性能够得到保证的前提下,尽可能地使得混合关键级作业系统
                 的平均系统关键级降低,同时使更多的作业能够得到完成,是混合关键级系统调度问题的重点之一.CSDDB 在
                 混合关键级作业系统的调度上,充分考虑了低关键级作业的执行,通过系统执行关键级的切换,尽可能在保证高
                 关键级作业完成的情况下,为低关键级作业提供更多的执行机会.实验证明,CSDDB 具有较好的性能.
                 5    结束语

                    本文针对混合关键级作业系统,在传统实时调度理论中的时间需求边界函数的基础上,提出了混合关键级
                 系统中的动态时间需求边界函数.该函数考虑了作业在不同关键级上的执行时间、可能被阻塞的情况以及在实
                 例中作业执行关键级的变化可能带来的影响,以矢量的形式表述了一个混合关键级作业在不同关键级上的时
                 间需求边界,且该边界随着系统运行产生动态的变化.在动态需求边界函数的基础上,本文提出了作业松弛时间
                 的概念,并进一步提出了关键级松弛时间的概念,以之为根本参数,提出了一种基于动态需求边界的混合关键级
                 作业调度算法 CSDDB.该算法总是选取不小于 0 的松弛时间中的最小值所对应的关键级作为系统的执行关键
                 级,通过系统执行关键级的切换,尽可能地在不损害高关键级作业执行的情况下,为低关键级作业创造运行机
                 会,从而提高作业集的整体完成率.仿真实验证明,CSDDB 在系统关键级与作业的完成率方面具有较优的性能.
                    当系统的运行环境为多处理器平台,特别是异构多处理器平台,或者系统的目标涉及功耗、能量等其他因
                 素时,动态需求边界的描述和应用都会变得更复杂,这也是本文继续研究的主要方向.


                 References:
                 [1]    Vestal S. Preemptive scheduling of multi-criticality systems with varying degrees of execution time assurance. In: Proc. of the 28th
                     IEEE Real-time Systems Symp. (RTSS). IEEE, 2007. 239−243.
                 [2]    Baruah S, Bonifaci V. Scheduling real-time mixed-criticality jobs. IEEE Trans. on Computer, 2011,61(8):1140−1152.
                 [3]    Baruah S. Schedulability analysis for a general model of mixed-criticality recurrent real-time tasks. In: Proc. of the IEEE Real-
                     Time Systems Symp. 2016. 25−34.
                 [4]    Burns A, Davis RI. Adaptive mixed criticality scheduling with deferred preemption. In: Proc. of the IEEE Real-time Systems Symp.
                     2014. 21−30.
                 [5]    de Niz D, Lakshmanan K, Rajkumar R. On the scheduling of mixed-criticality real-time task sets. In: Proc. of the IEEE Real-time
                     Systems Symp. IEEE, 2009. 291−300.
                 [6]    Huang H, Gill C. Implementation and evaluation of mixed-criticality scheduling approaches for period tasks. In: Proc. of the Real
                     Time and Embedded Technology and Application Symp. IEEE, 2012. 23−32.
                 [7]    Lakshmanan K, de Niz D, Rajkumar R. Mixed-criticality task synchronization in zero-slack scheduling. In: Proc. of the 17th Real-
                     Time and Embedded Technology and Applications Symp. (RTAS). IEEE, 2011. 47−56.
                 [8]    Li H, Baruah S. An algorithm for scheduling certifiable mixed-criticality sporadic task systems. In: Proc. of the Real-time Systems
                     Symp. San Diego: IEEE Computer Society Press, 2015. 183−192.
                 [9]    Baruah S, Bonifaci V, D’Angelo G, Marchetti-Spaccamela A, van der Ster S, Stougie L. Mixed-criticality scheduling of sporadic
                     task systems. In: Proc. of the 19th Annual European Symp. on Algorithms. Saarbrucken: Springer-Verlag, 2013. 555−566.
                [10]    Li H. Scheduling mixed-criticality real-time systems [Ph.D. Thesis]. University of North Carolina at Chapel Hill, 2013.
   349   350   351   352   353   354   355   356   357