问题
单项选择题
在操作系统中引入并发可以提高系统效率。若有两个程序A和B,A程序执行时所做的工作按次序需要用CPU:10秒;DEV1:5秒;CPU:5秒;DEV2:10秒;CPU:10秒。B程序执行时所做的工作按次序需要用DEV1:10秒;CPU:10秒;DEV2:5秒;CPU:5秒;DEV2:10秒。如果在顺序环境下执行A、B两个程序,CPU的利用率为 (8) ;如果在并发环境下执行两个程序,假设A程序先执行,则CPU的利用率为 (9) 。
A.99%
B.89%
C.79%
D.69%
答案
参考答案:B
解析:
[分析]:
如果A、B顺序执行,根据顺序环境的特点,程序A结束之后程序B才可以开始运行,因此总的运行时间应是两个程序运行所需实际时间的总和,即
(10+5+5+10+10)+(10+10+5+5+10)=80秒
再计算CPU运行时间:(10+5+10)+(10+5)=40秒,因此CPU利用率为40秒/80秒=50%。如果并发执行,则在程序A不使用CPU时,B可以占用CPU,与A对其他设备的使用同步进行。程序A、B是同时进行着,也是同时结束的,即运行时间重叠。因此可得,程序运行所需时间为45秒,而CPU运行时间为40秒,由此可得CPU利用率为40秒/45秒=89%。