-
引入进程的目的以及产生的问题
-
生产者-消费者(producer-consumer)问题
-
进程需要同步的条件进程需要同步的条件
1.进程是并发的
2.两(多)个进程存在共享资源
3.两(多)个进程之间存在相互制约关系 -
进程同步的目的
对多个相关进程的执行次序进行协调,以使并发执行的诸进程之间能有效地共享资源和相互合作,从而使程序的执行具有可再现性。 -
临界资源
在一段时间内只允许一个进程访问的资源称为临界资源或独占资源,许多硬件资源如打印机、磁带机等,都属于临界资源(Critical Resouce)。也有一些软件资源,也只允许一个进程以独占的方式访问,称为软件临界资源。
显然,当多个进程共享临界资源时,进程之间就要进行同步。
!访问临界资源的同步策略
设置临界区(critical section) -----每个进程中访问临界资源的那段代码
保证诸进程互斥地进入自己的临界区
每个进程在进入临界区之前,应先对欲访问的临界资源进行检查,只有当临界资源当前没有被别的进程使用时才允许其进入临界区
-
进程同步机制
1 同步机制应遵循的规则:
空闲让进:当无进程处于临界区时,表明临界资源处于空闲状态,应允许一个请求进入临界区的进程立即进入自己的临界区,以有效地利用临界资源。
忙则等待:当已有进程进入临界区时,表明临界资源正在被访问,因而其它试图进入临界区的进程必须等待,以保证对临界资源的互斥访问。
有限等待:对要求访问临界资源的进程,应保证在有限时间内能进入自己的临界区,以免陷入“死等”状态。
让权等待:当进程不能进入自己的临界区时,应立即释放处理机,以免进程陷入“忙等”状态。
2 信号量机制
信号量:一个用于表示资源数目的整型量S,当进程请求一个单位的资源时,根据当前的信号量来决定是否需要等待。
整型信号量
管程机制
-
进程通信
共享存储器系统
进程管理之进程的同步与通信
最新推荐文章于 2024-03-23 13:05:00 发布