操作系统PV操作、前趋图与PV操作
专业名词:
- 临界资源:各进程间需要互斥方式对其进行共享的资源,如打印机、磁带机等
- 临界区:每个进程中访问邻接资源的那段代码称为临界区
- 信号量:一种专门用于PV操作的变量
PV操作流程:
P操作:申请一个资源,S的值减一
V操作:释放一个资源,S的值加一
根据上图:先假设信号量S为0,左边先执行P操作,S的值减一变为-1,判断S值小于0,左边进程阻塞,将改进程放入阻塞队列。右边进程进行V操作,S值加一使S变为0,判断S=0,将右边的进程放入阻塞队列。(左边进程由于执行P操作进入阻塞状态,直到右边进程进行了V操作之后才能继续运行。例如,顾客在超市进行消费,只有一个售货员,顾客进程在把商品拿给售货员时进行P操作,进入阻塞状态,直到售货员进程找零之后进行V操作让顾客进程继续执行)。
前趋图与PV操作
P1~P4表示五个进程,前趋图有几个箭头即设置几个信号量,一般按从上到下,从左到右的顺序设置信号量。在进程执行前进行P操作,在进程执行后进行V操作。如下图所示: