- 临界资源:资源一次只能为一个进程所使用,把一次仅允许一个进程使用的资源称为临界资源。
- 访问临界资源的那段代码称为临界区。
- 同步:直接制约。指完成某种任务而建立的两个或多个进程,这些进程因为在某些位置上协调它们的工作次序而等待,传递信息所产生的制约关系。这种直接制约关系源于它们之间的相互合作。
- 互斥:间接制约。当一个进程进入临界区使用临界资源时,另一个进程必须等待,当占用临界资源的进程退出临界区后,另一个进程才允许访问临界资源。
使用PV原语
P原语操作的主要动作:
信号量减1,若减1后仍然大于或等于0,则继续执行;若信号量减1后小于0,则进程被阻塞后进入与该相应的队列中,然后转调度程序。
V原语操作的主要动作:
信号量加1;相加后结果大于0,V停止执行,进程返回调用处,继续执行;若相加后结果小于或等于0,则从该等待队列中唤醒一个等待进程,让后再返回进程执行或转进程调度。信号量是一个整形特殊变量,只有初始化和PV原语才能改变其值。
互斥量:互斥量初值一般为1,表示临界区只允许一个进程进入,从而实现互斥。而资源信号量可以是任意整数。、- 系统中有N个进程,至少一个进程正在执行,因此就绪队列中进程最多为N-1个进程。而阻塞队列中最多进程数为N个,所有进程都被阻塞了。
- PV操作时一种低级进程通信原语,不是系统调用。
进程同步
最新推荐文章于 2021-11-28 22:54:12 发布