进程管理之进程的同步与通信

  • 引入进程的目的以及产生的问题
    在这里插入图片描述

  • 生产者-消费者(producer-consumer)问题

  • 进程需要同步的条件进程需要同步的条件
    1.进程是并发的
    2.两(多)个进程存在共享资源
    3.两(多)个进程之间存在相互制约关系

  • 进程同步的目的
    对多个相关进程的执行次序进行协调,以使并发执行的诸进程之间能有效地共享资源和相互合作,从而使程序的执行具有可再现性。

  • 临界资源
    在一段时间内只允许一个进程访问的资源称为临界资源或独占资源,许多硬件资源如打印机、磁带机等,都属于临界资源(Critical Resouce)。也有一些软件资源,也只允许一个进程以独占的方式访问,称为软件临界资源。
    显然,当多个进程共享临界资源时,进程之间就要进行同步。
    !访问临界资源的同步策略
    设置临界区(critical section) -----每个进程中访问临界资源的那段代码
    保证诸进程互斥地进入自己的临界区
    每个进程在进入临界区之前,应先对欲访问的临界资源进行检查,只有当临界资源当前没有被别的进程使用时才允许其进入临界区
    在这里插入图片描述

  • 进程同步机制
    1 同步机制应遵循的规则:
    空闲让进:当无进程处于临界区时,表明临界资源处于空闲状态,应允许一个请求进入临界区的进程立即进入自己的临界区,以有效地利用临界资源。
    忙则等待:当已有进程进入临界区时,表明临界资源正在被访问,因而其它试图进入临界区的进程必须等待,以保证对临界资源的互斥访问。
    有限等待:对要求访问临界资源的进程,应保证在有限时间内能进入自己的临界区,以免陷入“死等”状态。
    让权等待:当进程不能进入自己的临界区时,应立即释放处理机,以免进程陷入“忙等”状态。
    2 信号量机制
    信号量:一个用于表示资源数目的整型量S,当进程请求一个单位的资源时,根据当前的信号量来决定是否需要等待。
    整型信号量
    在这里插入图片描述
    管程机制
    在这里插入图片描述

  • 进程通信
    共享存储器系统

猜你喜欢

转载自blog.csdn.net/weixin_37711738/article/details/89508494
今日推荐