操作系统--信号量

来源:互联网 发布:车载数据监控系统 编辑:程序博客网 时间:2024/06/05 11:12

对信号量S进行P操作,记为P(S),处理过程如下

--S.Q;    //表示申请一个资源

if(S.Q<0) //表示没有空闲资源

{

   调用进程进入等待队列S.Q;

  阻塞调用进程;

}


对信号量S进行V操作,记为V(S),处理过程如下

++S.Q; //表示释放一个资源

if(S.Q<=0) //表示有进程处于阻塞状态

{

   从等待队列S.Q中取出一个进程P;

  进程P进入就绪队列;

}

0 0