论文部分内容阅读
资源的提前预留是满足用户QoS (Quality of Service)要求的重要保证。目前基于提前预留的研究中都是采用的立即接纳立即调度算法(ISAC),即在确定是否接纳作业后需要立即根据相关算法确定将作业放置何处。在提前预留资源的过程中,当前作业的结束时间往往与其后面相邻作业的开始时间不同,那么在这两个作业之间就会出现一定的空闲区域,这种空闲区域的产生将可能导致无法容纳其他作业,因此,该段空闲区域就会被浪费,该空闲区域就成为了资源碎片,资源碎片的产生将会进一步降低作业的接纳率和资源的利用率。为了解决上述问题,本文提出了延迟调度接纳控制算法(DSAC),该算法的主要思想是当一个作业到达后,我们先根据当前的资源情况找出是否有满足其可用的资源来决定是否接纳该作业,若可以接纳,则在接纳后并不立即确定将作业放置何处,而是先记录下作业的调度方案,当满足了某个条件时再决定如何放置作业,利用延迟调度的思想,尽可能的提高作业调度的灵活性,从而提高接纳率。文中将作业的提前预留分为接纳控制和作业调度两个部分,并对这两个部分作了详细的介绍。最后用仿真实验验证了在多机单处理器环境中不同的调度算法对作业接纳率和资源利用率的影响。本文在基于离散事件驱动的仿真器中实现了DSAC算法,并首先对比了DSAC算法与ISAC算法下First-fit. Best-fit以及Worst-fit策略的作业接纳率以及资源利用率,然后研究了机器数量、作业到达率和作业截止时间因子三个控制参数对DSAC算法的影响。仿真结果证明了DSAC算法在作业接纳率和资源利用率方面都比ISCA算法有所提高。