用PV操作解决读者写者问题的正确程序如下:begin S, Sr: Semaphore; rc: integer; S:=1; Sr:=1; rc:=0;cobegin PROCES Reader i ( i=1,2…) begin P(Sr) rc:=rc+1; if rc=1 then P(S); V(Sr); read file; P(Sr); rc:=rc-1 if rc=0 thenV(S); V(Sr); end ; PROCES Writer j (j=1,2…) begin P(S); W
用PV操作解决读者写者问题的正确程序如下:begin S, Sr: Semaphore; rc: integer; S:=1; Sr:=1; rc:=0;cobegin PROCES Reader i ( i=1,2…) begin P(Sr) rc:=rc+1; if rc=1 then P(S); V(Sr); read file; P(Sr); rc:=rc-1 if rc=0 thenV(S); V(Sr); end ; PROCES Writer j (j=1,2…) begin P(S); Write file; V(S) end;coend ;end;请回答:(1)信号量 Sr的作用;(2)程序中什么语句用于读写互斥,写写互斥;(3)若规定仅允许5个进程同时读怎样修改程序?
正确答案:互斥|S5