某计算机系统中有一个CPU、一台扫描仪和一台打印机。现有三个图像处理任务,每个任务有三个程序段:扫描Si,图像处理Ci和打印Pi(i=1,2,3)。下图为三个任务各程序段并发执行的前驱图,其中, (1)可并行执行,(2)的直接制约,(3)的间接制约。

admin2010-03-08  32

问题 某计算机系统中有一个CPU、一台扫描仪和一台打印机。现有三个图像处理任务,每个任务有三个程序段:扫描Si,图像处理Ci和打印Pi(i=1,2,3)。下图为三个任务各程序段并发执行的前驱图,其中, (1)可并行执行,(2)的直接制约,(3)的间接制约。

(3)

选项 A、S1受到S2和S3、C1受到C2和C3、P1受到P2和P3
B、S2和S3受到S1、C2和C3受到C1、P2和P3受到P1
C、C1和P1受到S1、C2和P2受到S2、C3和P3受到S3
D、C1和S1受到P1、C2和S2受到P2、C3和S3受到P3

答案B

解析 本题考查操作系统多道程序设计中的基础知识。
   前趋图是一个有向无循环图,图由结点和结点间的有向边组成,结点代表各程序段的操作,而结点间的有向边表示两程序段操作之间存在的前趋关系(“→”)。两程序段Pi和Pj的前趋关系表示成Pi→Pj,其中Pi是Pj的前趋,Pj是Pi的后继,其含义是Pi执行完毕才能由Pj执行。可见,当S1执行完毕后,计算C1与扫描S2可并行执行:C1与S2执行完毕后,打印P1、计算C2与扫描S3可并行执行;P1、C2与S3执行完毕后,打印 P2与计算C3可并行执行。
   根据题意,系统中有三个任务,每个任务有三个程序段,从前趋图中可以看出,系统要先进行扫描Si,然后再进行图像处理Ci,最后进行打印Pi,所以C1和P1受到S1的直接制约、C2和P2受到S2的直接制约、C3和P3受到S3的直接制约。
   根据题意,系统中有一台扫描仪,因此S2和S3不能运行是受到了S1的间接制约,如果系统中有三台扫描仪,那么S2和S1能运行;同理,C2和C3受到C1的直接制约、P2和P3受到P1的间接制约。
转载请注明原文地址:https://kaotiyun.com/show/L8QZ777K
0

最新回复(0)