问题 问答题

简述P、V操作。

答案

参考答案:P、V操作是由两个操作——P操作和V操作组成。这两个操作是两个不可中断的过程,它们在屏蔽中断的情况下连续执行。把不可中断的过程称作“原语”,于是P操作和V操作也可称为P操作原语和V操作原语,简称P、V操作。P\V操作是对信号量进行操作,它们的定义如下:
· P操作P(S):将信号量S减去1,若结果小于0,则调用P(S)的进程被置成等待信号量S的状态。
· V操作V(S):将信号量S加1,若结果不大于0,则释放一个等待信号量S的进程。
P操作和V操作可表示成如下两个过程:
procedure P (Var s: semaphore);
begin
s:=s-1;
if s<0 then W(s)
end;{p}
procedure V(Var s:semaphore);
begin
s:=s+1;
if s<=0 then R(S)
end;{v}
其中,W(S)表示将调用过程的进程置成等待信号量S的状态;R(S)表示释放一个等待信号量S的进程,信号量S的初值为0或1或其他整数,它应在系统初始化时确定。

问答题
判断题