【正确答案】
B
【答案解析】[解析] 本题考查并发进程的特点,并结合信号量进行同步的原理。由于进程并发,所以,进程的执行具有不确定性。先将进程运行的顺序编排如下:
进程P1
……
①y:=1;
②y:=y+z;
③V(s1);
④z:=y+1;
⑤P(s2);
⑥y:=y+z;
……
进程P2
…… (4)x:=x+y;
(1)x:=1; (5)V(s2);
(2)x:=y+z; (6)z:=x+z;
(3)P(s1); ……
a)P1先于P2运行,x、y和z的结果分别是:5、12和9
b)P2先于P1运行,x、y和z的结果分别是:5、12和9
c)P1运行到⑤阻塞,切换到P2运行,x、y和z的结果分别是:5、7和9
d)P2运行到(3)阻塞,切换到P1运行,x、y和z的结果分别是:5、7和4
e)当运行顺序是:①(1)②(2)③(3)④(4)⑤(5)⑥(6),结果分别是:5、7和9
f)当运行顺序是:(1)①(2)②(3)③(4)④(5)⑤(6)⑥,结果分别是:5、12和9
在计算结果时,需要考虑各种因素,尽量不要遗漏。本题若不全面分析结果,很可能会选择D,所以在计算时思路要清晰,方法要全面。