操作系统复习(二)进程管理(三)
同步与互斥
进程同步的基本概念
两种形式的制约关系
间接相互制约关系(互斥)
若某一进程要求使用某种资源,而该资源正在被另一进程所使用,并且该资源不允许两个用户同时使用,该进程只能等待另一进程释放该资源后才能使用。
- 制约关系的的基本形式为“进程—资源—进程”
- 这种制约关系源于多个同种进程需要互斥地共享某种系统资源,互斥是设置在同种进程之间以达到互斥访问资源地目的
- 例如:生产者-消费者问题中,生产者与生产者之间需要互斥访地访问缓冲池。
直接相互制约关系(同步)
某一进程收不到另一进程给它提供的必要信息就不能继续运行下去。
-
制约关系的基本形式是“进程—进程”
-
这种制约关系主要源于进程间的合作,同步设置在不同进程之间以达到多种进程间的同步
-
EG:生产者-消费者问题中,生产者没有生产产品,消费者则无法消费。
同类进程为互斥关系,不同类进程为同步关系
临界资源与临界区
同时仅允许一个进程使用的资源称为临界资源
访问临界资源的过程
- 进入区:在进入区要检查是否可以进入临界区
- 临界区:进程用于访问临界资源的代码,又称临界段
- 退出区:将“正在访问临界区”标志清除
- 剩余区:上述3部分以外的其他部分
临界资源与临界区的区别
-
临界资源是一种系统资源,需要不同进程互斥访问
-
临界区是每个进程中访问临界资源的一段代码,是属于对应进程的
-
临界区出现的目的是为了实现对临界资源的管理
互斥的概念与要求
当一个进程进入临界区使用临界资源时,另一个进程必须等待,知道占用该临界资源的进程退出临界区后,才允许新的进程访问该临界资源。
软件算法和同步机构遵