问答题 某多道程序设计系统配有一台处理器和两台外设101、102,现有3个优先级由高到低的J1、J2、J3都已装入了主存,它们使用资源的先后顺序和占用时间分别是: J1:102(30ms),CPU(10ms);101(30ms),CPU(10ms); J2:101(20ms),CPU(20ms);102(40ms); J3:CPU(30ms),101(20ms)。 处理器调度采用可抢占的优先数算法,忽略其他辅助操作时间,回答下列问题。 (1)分别计算作业J1、J2和J3从开始到完成所用的时间。 (2)3个作业全部完成时CPU的利用率。 (3)3个作业全部完成时外设101的利用率。
【正确答案】为了清楚地描述作业执行情况,我们对题目假设的情况分析如下: (1)J1占用IO2传输30ms时,J1传输完成,抢占J2的CPU,运行10ms,再传输30ms,运行10ms,完成。J1从开始到完成所用的时间为:30+10+30+10=80(ms)。 J2与其并行地在IO1上传输20ms,抢占J3的CPU,J2运行10ms后,被J1抢占CPU,等待10ms之后,J2再次得到CPU,运行10ms,J2启动:IO2传输,40ms完成。J2从开始到完成所用的时间为:20+10+10+10+40=90(ms)。 J3在CPU上执行20ms,被J2抢占CPU,等待30ms,再运行10ms,等待10ms,J3启动IO1运行20ms的传输,完成。J3从开始到完成所用的时间为20+30+10+10+20=90(ms)。 (2)三个作业全部完成时,CPU的利用率为(10+20+30+10)/90=7/9=78%。 (3)三个作业全部完成时,外设IO1的利用率为(20+30+20)/90=7/9=78%。
【答案解析】