操作系统

进程同步
同步的概念
在这里插入图片描述
计算进程和打印进程共同使用同一缓冲区。计算进程反复地把每次计算的结果放在Buf中,而打印进程则把计算计算进程每次放入Buf中的数据通过打印机输出。
如果不采取任何制约措施,这两个进程执行起始时间和执行速度都是独立的。
异步环境:主要是指各并发进程的起始时间的随机性和执行速度的独立性。
进程制约将会造成大量的cpu浪费
解决方法:直接制约的进程互相给对方发送执行条件已经具备的信号
收到制约进程发来的信号便开始执行,而没有收到处在等待状态
直接制约:
一组在异步环境下的并发进程,各自执行结果互为对方的执行条件,从而限制个进程的执行速度
进程同步:
异步环境下的一组并发进程,因直接制约而互相发送消息而进行相互合作,相互等待,使得进程按一定的速度执行的过程。
合作进程:具有同步关系的一组并发进程
消息或事件:合作进程间互相发送的信号
如果对一个消息或事件赋值唯一的消息名,就可用过程wait(消息名)表示等待合作进程发来的消息。而用过程signal(消息名)表示向合作进程发送的消息。
私用信号量:
把各进程之间发送的消息作为信号量看待,这里的信号量只与制约进程以及被制约进程有关而不是整组并发进程有关。
一个进程Pi的私用信号量Semi是从制约进程发送来的进程Pi执行条件所需要的消息。
与私用信号量相对应,称互斥时使用的信号量为公用信号量。
PV原语操作实现同步的方法分为三步
1.首先为各并发进程设置私用信号量
2.然后为私用信号量赋初值
3.最后利用PV原语和私用信号量规定各进程的执行顺序。
生产者—消费者问题
把并发进程的同步和互斥问题一体化,可以得到一个抽象的一般模型,即生产者—消费者问题。
资源即可以像外设等硬件资源,也包括临界区、数据等软件资源。
把系统中使用某一类资源的进程称为该资源的消费者,而把释放同类资源的进程称为该资源的生产者。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值