本节我们一起学习下PV操作,首先我们看一下PV操作的定义:
PV操作是典型的同步机制之一。用一个信号量与一个消息联系起来,当信号量的值为0时,表示期望的消息尚未产生;当信号量的值非0时,表示期望的消息已经存在。用PV操作实现进程同步时,调用P操作测试消息是否到达,调用V操作发送消息。 信号量 : 信号量是一个二元组(S,Q),其中S是一个整形变量,初值为非负数,Q为一个初始状态为空的等待队列。 在多道程序系统中,信号量机制是一种有效的实现进程同步与互斥的工具。 信号量的值通常表示系统中某类资源的数目,若它大于0,则表示系统中当前可用资源的数量,若它小于0,则表示系统中等待使用该资源的进程数目,即在该信号量队列上排队的PCB的个数。 信号量的值是可变的,由 PV操作来改变。 PV操作是对信号量进行处理的操作过程,而且信号量只能由PV操作来改变。 P操作是对信号量减1,意味着请求系统分配一个单位资源,若系统无可用资源,则进程变PV操作是一种实现进程互斥与同步的有效方法。PV操作与信号量的处理相关,P表示通过的意思,V表示释放的意思。