软考笔记

PV操作

与pv操作相关的几个概念

1.临界资源:诸进程间需要互斥方式对其进行共享的资源,如打印机,磁带机等。

2.临界区:每个进程中访问临界资源的那段代码称为临界区。

3.信号量:是一种特殊的变量,符号为s,只用于pv操作

 

用PV操作来管理共享资源时,首先要确保PV操作自身执行的正确性。由于P(S)和V(S)都是在同一个信号量S上操作,为了使得它们在执行时不发生因交叉访问信号量S而可能出现的错误,约定P(S)和V(S)必须是两个不可被中断的过程,即让它们在屏蔽中断下执行。把不可被中断的过程称为原语。于是,P操作和V操作实际上应该是P操作原语和V操作原语。
P操作的主要动作是:
①S减1;
②若S减1后仍大于或等于0,则进程继续执行;
③若S减1后小于0,则该进程被阻塞后放入等待该信号量的等待队列中,然后转进程调度。
V操作的主要动作是:
①S加1;
②若相加后结果大于0,则进程继续执行;
③若相加后结果小于或等于0,则从该信号的等待队列中释放一个等待进程,然后再返回原进程继续执行或转进程调度。
PV操作对于每一个进程来说,都只能进行一次,而且必须成对使用。在PV原语执行期间不允许有中断发生。原语不能被中断执行,因为原语对变量的操作过程如果被打断,可能会去运行另一个对同一变量的操作过程,从而出现临界段问题。如果能够找到一种解决临界段问题的元方法,就可以实现对共享变量操作的原子性。

 

计算机系统知识

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 2.2 数据库与算法知识

 

 

 

 

 

 

 

 

 

 

 

  

 

 

 

 

 

 

 

 

 

 

**

posted @ 2023-03-30 15:40  htj10  阅读(42)  评论(0编辑  收藏  举报
TOP