操作系统(二十二)用信号量机制实现进程互斥、同步、前驱关系

本文详细介绍了如何利用信号量机制实现进程的互斥、同步以及前驱关系。通过设定互斥信号量实现资源访问的独占,设置同步信号量确保特定操作的顺序执行,以此解决并发执行带来的问题。
摘要由CSDN通过智能技术生成

2.3.5 用信号量机制实现进程互斥、同步、前驱关系

目录

2.3.5 用信号量机制实现进程互斥、同步、前驱关系

2.3.5.1 用信号量机制实现进程互斥

2.3.5.2 用信号量机制实现进程同步

2.3.5.3 信号量机制实现前驱关系


2.3.5.1 用信号量机制实现进程互斥

  由之前的学习我们知道进程互斥就是在同一时间访问临界资源的进程只能有一个。并且P操作是申请资源并上锁的原语,V操作时释放资源并解锁的原语,我们引用一个互斥信号量mutex表示进入临界区的名额,并设置初值为1来实现进程互斥。

   1. 分析并发进程的关键活动,划定临界区(如:对临界资源打印机的访问就应放在临界区)

   2. 设置互斥信号量 mutex,初值为 1

   3. 在进入区 P(mutex)——申请资源

   4. 在退出区 V(mutex)——释放资源
  这里需要注意:P(mutex)与V(mutex)必须成对存在,如果缺少P那么互斥性就不可以保证,如果缺少V就导致资源不能解锁,并且等待进程永远不会被唤醒。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值