PV习题
摘要:有一个报箱为A、B两人共同使用,每次只能装一份报纸。A订阅《科技报》,B订阅《新民晚报》,投递员C、D分属科技报社和新民晚报社,试用P、V操作写出他们的同步执行程序。1、vars,science,night:semaphore:=1,0,0;beginparbeginA:beginwhile(true)C:beginwhile(true){wait(science);{wait(s);取科技报;投递科技报;signal(s);signal(science);}}end;end;B:beginwhile(true)D:beginwhile(true){wait(night);{wait(s);取新民晚报;投递新民晚报;signal(s);signal(night);}}end;end;parend;end.2、设有两个优先级相同的进程P1和P2如下。信号量S1和S2的初值均为0,试问P1、P2并发执行后,x、y、z的值各是多少?请写出判断的过程。进程P1:y=1;进程P2:x=1;y=y+2;x=x+1;V(S1);P(S1);z=y+1;x=x+y;P(S2);V(S2);y=z+y;z=x+z;并发进程P1、P2中各语句执行的前趋图为:1:y=15:x=12:y=y+26:x=x+13:z=y+17:x=x+y4:y=z+y8:z=x+z无论调度顺序如何,进程执行到语句7时x的值为5,y的值为3。由于语句3的执行结果不受语句7的影响,语句3执行后,z的值为4。此后语句4和语句8可以并发执行:(1)若语句4先执行,则两进程执行结束后,x的值为5,y的
温馨提示:当前文档最多只能预览
5 页,若文档总页数超出了
5 页,请下载原文档以浏览全部内容。
本文档由 匿名用户 于 2022-06-23 23:18:24上传分享