第二章 进程管理-进程同步

进程制约的两种关系
1、间接相互制约关系。同处于一个系统中的进程,访问共享系统资源,只能有一个进程访问
2、直接相互制约关系。进程A通过单缓冲想进程B提供数据,缓冲满时,B取出数据后唤醒A,

临界资源
临界资源,采取互斥方式,实现对这种资源进行共享

生产者-消费者问题

这里写图片描述

array表示缓冲池
in 表示下一个投放产品的缓冲区
out 表示下一个可从中获取产品的缓冲区
in = out 表示缓冲池空
counter 表示产品的数量,放入+1 ,取走-1
这里写图片描述

临界区:多个进程必须互斥的对它访问,每个进程中访问临界资源的那段代码成为临界区。
这里写图片描述

entry section 进入区,检查临界资源访问标志是否被访问
critical section 临界区,访问临界资源的代码
exit section 退出区,将访问标志恢复

同步机制遵循的规则
1、空闲让进
2、忙则等待
3、有限等待
4、让权等待

整型信号量
定义为一个用于表示资源数目的整型量S
仅能通过两个标准的原子操作wait(S)和signal(S)来访问
成为P、V操作
描述为

wait(S):    while S <= 0 do no-op;
            S:=S-1 ;
signal(S):  S:S+1 ;

两个原子操作,执行时不可中断,该机制未遵循让权等待的准则

记录型信号量
出现多个进程等待访问同一临界资源的情况
处理需要一个用于代表资源数目的整型变量value,还应增加一个进程链表指针L,链接所有等待进程
采用的记录型的数据结构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值