问题 单项选择题

在一个单CPU的计算机系统中,采用可剥夺式(也称抢占式)优先级的进程调度方案,且所有任务可以并行使用:I/O设备。表6-2列出了三个任务T1、T2、T3的优先级、独立运行时占用CPU和I/O设备的时间。

表6-2 任务T1、T2、T3资源分配表

任务 优先级 每个任务独立运行时所需时间
T1 对每个任务:
T2 占用CPU 10ms,I/O 13ms,再占用CPU 5ms
T3
如果操作系统的开销忽略不计,这三个任务从同时启动到全部结束时,CPU的空闲时间共有______ms。

A.3
B.5
C.8
D.13

答案

参考答案:D

解析:
根据题意可知,三个任务的优先级是T1>T2>T3,进程调度过程如图7-2所示:


t0时刻:进程调度程序选任务T1投入运行,10ms后即在t1时刻占用I/O。
t1时刻:此时由于CPU空闲,进程调度程序选任务T2投入运行,运行10ms后在t2时刻任务T2占用I/O。
t1与t2时刻之间任务T1占用I/O,任务T2在运行。
t2时刻:此时CPU空闲,进程调度程序选任务T3投入运行,运行3ms后,任务T1结束占用I/O。t2与t3时刻之间任务T1、任务T2占用I/O,任务T3在运行。
如时刻:由于系统采用可剥夺式优先级的进程调度方案,所以,强行地将任务T3占用的CPU剥夺,分配给T1。在运行5ms后到t4时刻任务T1运行完毕。t3与t4时刻之间任务T1在运行,任务T2占用I/O。
t4时刻:将CPU重新分配给T3,运行5ms到t5时刻,任务T2结束占用I/O,再次强行地将任务T3占用的CPU剥夺,任务T2开始运行。t4与t5时刻之间任务T1结束,任务T2占用I/O,任务T3在运行。
t5时刻:运行5ms后,t6时刻任务T2运行完毕。
t6时刻:系统将CPU分配给任务T3,运行2ms后,T3开始占用I/O,此时为t7时刻。
t7时刻到t8时刻:共计13ms,没有待运行的任务。
t8时刻:任务T3结束占用I/O,运行5ms后,到幻时刻任务T3运行结束。
从以上上可见,这三个任务从同时启动到全部结束的总时间为58ms,CPU的空闲时间共有13ms。

单项选择题
选择题