3、假定在一台处理机上执行5道作业,假定这些作业在时刻0以1、2、3、4、5的书序到达。其中,作业1执行时间为10个时间单位,优先级为3,作业2的执行时间为1个时间单位,优先级为1,作业3的执行时间为2个时间单位,优先级为3,作业4的执行时间为1个时间单位,优先级为4,作业5的执行时间为5个时间单位,优先级为2。请说明分别采用FCFS、RR(时间片为1)、SJF及非抢占式优先级调度算法时,这些作业的执行情况(优先级的高低顺序依次为1到5)。针对上述每种调度算法,给出平均周转时间和带权周转时间。
时间: 2024-01-24 21:19:02 浏览: 14
首先,需要根据不同的调度算法对这5个作业进行排序,以便后续计算平均周转时间和带权周转时间。
1. FCFS(先来先服务)
作业到达的顺序为 1-2-3-4-5,按照先来先服务的原则进行调度,执行顺序为 1-2-3-4-5。
作业1的完成时间为10,作业2的完成时间为11,作业3的完成时间为13,作业4的完成时间为14,作业5的完成时间为19。
平均周转时间 = (10+11+13+14+19)/5 = 13.4
带权周转时间 = (10/10 + 1/1 + 2/3 + 1/4 + 5/5)/5 = 0.91
2. RR(时间片为1)
作业到达的顺序为 1-2-3-4-5,按照时间片为1的轮转调度算法进行调度,执行顺序为 1-2-3-4-5-1-3-5-1-5-5。
作业1的完成时间为14,作业2的完成时间为2,作业3的完成时间为15,作业4的完成时间为4,作业5的完成时间为20。
平均周转时间 = (14+2+15+4+20)/5 = 11
带权周转时间 = (10/14 + 1/2 + 2/15 + 1/4 + 5/20)/5 = 0.49
3. SJF(短作业优先)
作业到达的顺序为 1-2-3-4-5,按照短作业优先的原则进行调度,执行顺序为 2-4-3-5-1。
作业1的完成时间为10,作业2的完成时间为1,作业3的完成时间为5,作业4的完成时间为2,作业5的完成时间为10+5=15。
平均周转时间 = (10+1+5+2+15)/5 = 6.6
带权周转时间 = (10/10 + 1/1 + 2/2 + 1/4 + 5/5)/5 = 0.9
4. 非抢占式优先级调度算法
作业到达的顺序为 1-2-3-4-5,按照优先级的高低顺序进行调度,执行顺序为 1-3-5-2-4。
作业1的完成时间为10,作业2的完成时间为11,作业3的完成时间为12,作业4的完成时间为13,作业5的完成时间为18。
平均周转时间 = (10+11+12+13+18)/5 = 12.8
带权周转时间 = (10/10 + 1/11 + 2/12 + 1/13 + 5/18)/5 = 0.72