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 16:18:53 浏览: 76
首先,我们需要确定每种算法的调度顺序。FCFS算法按照作业到达的顺序进行调度,RR算法按照时间片轮转的顺序进行调度,SJF算法按照作业执行时间从短到长的顺序进行调度,非抢占式优先级调度算法按照作业优先级从高到低的顺序进行调度。
接下来,我们按照不同的算法给出作业的执行情况和每个作业的服务时间。
1. FCFS算法:
作业1在时刻0到达,优先级为3,执行时间为10个时间单位。作业2在时刻1到达,优先级为1,执行时间为1个时间单位。作业3在时刻2到达,优先级为3,执行时间为2个时间单位。作业4在时刻3到达,优先级为4,执行时间为1个时间单位。作业5在时刻4到达,优先级为2,执行时间为5个时间单位。
因为FCFS算法按照作业到达的顺序进行调度,所以作业的执行顺序为:作业1、作业2、作业3、作业4、作业5。
作业1服务时间为10个时间单位,作业2服务时间为1个时间单位,作业3服务时间为2个时间单位,作业4服务时间为1个时间单位,作业5服务时间为5个时间单位。
2. RR算法:
根据题目,时间片为1个时间单位。
作业1在时刻0到达,优先级为3,执行时间为10个时间单位。作业2在时刻1到达,优先级为1,执行时间为1个时间单位。作业3在时刻2到达,优先级为3,执行时间为2个时间单位。作业4在时刻3到达,优先级为4,执行时间为1个时间单位。作业5在时刻4到达,优先级为2,执行时间为5个时间单位。
因为RR算法按照时间片轮转的顺序进行调度,所以作业的执行顺序为:作业1、作业2、作业3、作业4、作业5、作业1、作业3、作业5、作业1、作业5、作业5。
作业1服务时间为10个时间单位,作业2服务时间为1个时间单位,作业3服务时间为2个时间单位,作业4服务时间为1个时间单位,作业5服务时间为10个时间单位。
3. SJF算法:
作业1在时刻0到达,优先级为3,执行时间为10个时间单位。作业2在时刻1到达,优先级为1,执行时间为1个时间单位。作业3在时刻2到达,优先级为3,执行时间为2个时间单位。作业4在时刻3到达,优先级为4,执行时间为1个时间单位。作业5在时刻4到达,优先级为2,执行时间为5个时间单位。
因为SJF算法按照作业执行时间从短到长的顺序进行调度,所以作业的执行顺序为:作业2、作业4、作业3、作业5、作业1。
作业1服务时间为10个时间单位,作业2服务时间为1个时间单位,作业3服务时间为2个时间单位,作业4服务时间为1个时间单位,作业5服务时间为5个时间单位。
4. 非抢占式优先级调度算法:
作业1在时刻0到达,优先级为3,执行时间为10个时间单位。作业2在时刻1到达,优先级为1,执行时间为1个时间单位。作业3在时刻2到达,优先级为3,执行时间为2个时间单位。作业4在时刻3到达,优先级为4,执行时间为1个时间单位。作业5在时刻4到达,优先级为2,执行时间为5个时间单位。
因为非抢占式优先级调度算法按照作业优先级从高到低的顺序进行调度,所以作业的执行顺序为:作业4、作业1、作业3、作业5、作业2。
作业1服务时间为10个时间单位,作业2服务时间为1个时间单位,作业3服务时间为2个时间单位,作业4服务时间为1个时间单位,作业5服务时间为5个时间单位。
阅读全文