进程互斥与同步

 

1、并发与并行是两个既相似而又不相同的概念:

并发性,又称共行性,是指能处理多个同时性活动的能力;

并行是指同时发生的两个并发事件,具有并发的含义,而并发则不一定并行,也亦是说并发事件之间不一定要同一时刻发生。

两者区别:一个是交替执行,一个是同时执行.

2、进程之间存在同步和互斥两种关系

同步是因合作进程之间协调彼此的工作而控制自己的执行速度,即因相互合作,相互等待而产生的制约关系。

而互斥是进程之间竞争临界资源而禁止两个以上的进程同时进入临界区所发生的制约关系。

3、互斥指的是某种资源一次只允许一个进程使用,即在你使用的时候我不能用,我使用是时候你不能用,这是一种协调一种同步
4、如果在一个进程集合中的每个进程都在等待只能由该集合中的其他进程才能引发的事件,而无限期僵持的局面称死锁。

一个可运行进程由于其他进程总是优先于它,而被无限期拖,延而不能被执行的现象称饥饿。

死锁进程必然处于饥饿状态,但处于饥饿状态的进程未必陷入死锁。

5、每个进程中访问临界资源的那段程序称为临界区,每次只准许一个进程进入临界区,进入后不允许其他进程进入。

如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。

任何时候,处于临界区内的进程不可多于一个。如已有进程进入自己的临界区,则其它所有试图进入临界区的进程必须等待。

进入临界区的进程要在有限时间内退出,以便其它进程能及时进入自己的临界区。

 如果进程不能进入自己的临界区,则应让出CPU,避免进程出现“忙等”现象

 

posted on 2019-04-23 16:10  郑楠荞  阅读(242)  评论(0编辑  收藏  举报