用PV操作解决读者写者问题的正确程序如下: Begin S,sr:semaphore,rc:integer; S=1,sr=1,rc=0; Cobegin PROCESS 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 then v(s); v(sr); End; PROCESS wreter j (j=1,2...) Begin p(s); write file; v(s); End; Coend; End; 其中用于说明没有读者在读,需要唤醒一个写者进程的是: