码迷,mamicode.com
首页 > 其他好文 > 详细

PV操作,我终于懂你了!

时间:2015-04-07 23:35:43      阅读:513      评论:0      收藏:0      [点我收藏+]

标签:pv操作

       上个星期,米老师给我们讲课实在是精彩!本人终于对Pv操作有了自己的理解。之前一直不太理解Pv操作,现在总结一下,以供下阶段学习和总结。

       为什么叫PV操作?原因是:这是狄克斯特拉用荷兰文定义的,因为在荷 兰文中,通过叫passeren,释放叫vrijgeven,PV操作因此得名。

技术分享


     这张图乍一看谁也不知道我想说明什么。我想通过这张图来给大家解释一下PV操作!
     中间这加粗的黑线是秤杆,就像我们生活中的上下控制的电源开关!只有两个状态,一个是向上,一个是向下。
     这张图的上面是消费者(儿子),对于消费者来说,它只负责观察V信号量,也就是秤杆上面的标志V信号量;
     这张图的下面是生产者(父亲),对于生产者来说,它只负责观察P信号量,也就是秤杆下面的标志P信号量。
     说明:秤杆离哪者远,哪者的信号量为1,哪者近,其信号量为0
运行:
     当秤杆在a处时,V信号量为0,P信号量为1;在b处时,V信号量为1,P信号量为0.
假设存在秤杆在C处的情况,此时是瞬间短暂的,V和P的信号量都为0.

     当秤杆位置高于C处时,P-1不小于0,可以进行P操作,同时V信号量加1,PV操作完成,秤杆位置低于C处,P信号量为0,V信号量为1,之后消费者进行PV操作,同理,P-1不小于0,(此时的P信号量是对于消费者来说的,因为生产者已经生产了一个,所以消费者的P信号量为1,相当于生产者的V信号量。)可以进行P操作,同时V信号量加1,PV操作完成,秤杆位置高于C处,P信号量为1,V信号量为0,之后又是生产者进行PV操作。


    PV操作的特点:
    原子性,P和V操作不可分!
    连续性,P和V操作是不间断的。
    P自己,V对方:P的是自己的信号量减1,V的是对方的信号量加1.

PV操作,我终于懂你了!

标签:pv操作

原文地址:http://blog.csdn.net/u010843114/article/details/44924231

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!