多做题,通过考试没问题!

操作系统(CH1)

睦霖题库>大学试题(计算机科学)>操作系统(CH1)

(1)两个并发进程并发执行,其中,A、B、C、D、E是原语,试给出可能的并发执行路径。  Process P             Process Q  begin                 begin               A;                  D;              B;                  E;              C;               end;           end;  (2) 两个并发进程P1和P2并发执行,它们的程序分别如下:        P1             P2         repeat            repeat          k:=k×2;        print k;          k:=k+1;         k:=0;       until false;       until false;  若令k的初值为5,让P1先执行两个循环,然后,P1和P2又并发执行了一个循环,写出可能的打印值,指出与时间有关的错误。

正确答案: (1) 共有10种交错执行的路径:
A、B、C、D、E;A、B、D、E、C;A、B、D、C、E;
A、D、B、E、C;A、D、B、C、E;A、D、E、B、C;
D、A、B、E、C;D、A、B、C、E;D、A、E、B、C;D、E、A、B、C。
(2) 把语句编号,以便于描述:
P1             P2
repeat            repeat
K:=k×2;   ①     print k;  ③
K:=k+1;    ②     k:=0;   ④
until false;        until false;
1)K的初值为5,故P1执行两个循环后,K=23。
2)语句并发执行有以下情况:
①、②、③、④,这时的打印值为:47
③、④、①、②,这时的打印值为:23
①、③、②、④,这时的打印值为:46
①、③、④、②,这时的打印值为:46
③、①、②、④,这时的打印值为:23
③、①、④、②,这时的打印值为:23
由于进程P1和P2并发执行,共享了变量K,故产生了‘结果不唯一’。
答案解析:
进入题库查看解析

微信扫一扫手机做题