- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.2 用信号量机制
实现进程的同步与互斥
5.2.1 信号量机制
5.2.2 利用信号量机制实现进程互斥
5.2.3 利用信号量机制解决进程的同步
5.2.4 经典的同步与互斥问题
5.2.1信号量机制
1.信号量的含义
2.P、V操作的定义
3.信号量和P、V操作的物理意义
1.信号量的含义
操作系统中,信号量是表示物理资源的实
体,它是一个与队列有关的整型变量。实现
时,信号量是一种记录型数据结构,有两个
分量:一个是信号量的值,另一个是信号量
队列的队列指针。
信号量的值 (-2)
PCBi PCBj
信号量队列指针
图5.4信号量的结构和含义
信号量按其用途分为两类:
公用信号量 :与公用信号量联系的
一组并发进程均可对它实施P、V操
作。
私有信号量 :只允许信号量的拥有
者进程对它实施P操作,与信号量的
拥有者进程合作的进程对它实施V操
作。
2.P、V操作的定义
设S为信号量,q为对资源S操作的进程,Q为S的等待队
列。
(1)P操作原语P(S)可描述为:
① S=S-1;
②若S≥0,则调用P(S)的进程q继续运行;
③若S<0,则调用P(S)的进程q将进入阻塞
状态,并放入S的等待队列Q中。
(2)V操作原语V(S)可描述为:
① S=S+1;
② 若S>0,则调用V(S)的进程q继续运
行;
③ 若S≤0,则从S的等待队列中唤醒头一个
进程,然后,调用V(S)的进程q继续运行。
3.信号量和P、V操作的物理意义(1)
信号量(用S表示)是代表资源的实
体,是一个与进程队列Q有关的整形
变量,除信号量的非负初值外,信号
量的值只能由P操作和V操作来改变。
操作系统利用信号量实施对进程的控
制和对资源的管理。
3.信号量和P、V操作的物理意义(2)
信号量S的取值表示系统中某类资源的数目。
当S0时:
其值表示系统中当前可用的某类资源数量;
当S=0时:
表示系统中当前已无某类资源可用;
当S0时:
其绝对值表示系统中因请求该类资源而被阻
塞的进程数量或登记排列在该信号量s队列之
中等待的进程个数。
3.信号量和P、V操作的物理意义(3)
通常,P操作意味着请求一个资源,
因此描述为S=S-1;V操作意味着释
放一个资源,因此描述为S=S+1。
在一定条件下(S=0时),P操作的
结果将会引起进程阻塞;在一定条
件下(S0时),V操作的结果可以唤
醒某个阻塞进程;
3.信号量和P、V操作的物理意义(4)
P操作原语为请求资源而设,V操作原
语为释放资源而设;
P操作即可充当资源申请原语的作
用,也可以充当进程阻塞原语的作
用;
V操作即可充当资源释放原语的作
用,也可以当作进程唤醒原语的作
用;
5.2.2 利用信号量机制
实现进程互斥的模型
设n个进程P1,P2, …,Pn的相关临界区分别为
CS1,CS2,…,CSn,只要在每个进程的临界区
两端放上P、V操作原语即可实现临界区互斥。
假设信号量S的初值为1,则,互斥的模型如下:
Pi (i=1,2,3,…,n )
……
P (S )
Csi(临界区)
V (S )
……
利用信号量机制实现进程互斥的模型:
您可能关注的文档
- 数控车工(高级)含1VCD教材配套课件沈建峰虞俊数控车工(高级)第六章.pdf
- 数控车工(高级)含1VCD教材配套课件沈建峰虞俊数控车工(高级)第七章.pdf
- 数控车工(高级)含1VCD教材配套课件沈建峰虞俊数控车工(高级)第五章.pdf
- 数控车工(高级)含1VCD教材配套课件沈建峰虞俊数控车工(高级)第一章.pdf
- 数控车工(高级)含1VCD教材配套课件沈建峰虞俊数控车工第二章.pdf
- 数控车工(高级)含1VCD教材配套课件沈建峰虞俊数控车工第三章.pdf
- 数控车工(技师、高级技师)教材配套课件韩鸿鸾第二章-数控车床精度及加工精度.pdf
- 数控车工(技师、高级技师)教材配套课件韩鸿鸾第六章-数控车床的故障诊断和排除.pdf
- 数控车工(技师、高级技师)教材配套课件韩鸿鸾第七章-生产管理的有关知识.pdf
- 数控车工(技师、高级技师)教材配套课件韩鸿鸾第三章-数控车床加工基础.pdf
- 301115_2024_#ESG_联检科技_2024年度环境、社会和治理(ESG)报告_2025-04-29.pdf
- 300308_2024_#ESG_中际旭创_2024年环境、社会及公司治理(ESG)报告_2025-04-21.pdf
- 想生科技产品注册公告及所需文件상생기술제품_등록_공고문_및_제출_서류.pdf
- 300760_2024_#SD_迈瑞医疗_2024年度可持续发展报告_2025-04-29.pdf
- 300870_2024_#SD_欧陆通_欧陆通2024年可持续发展报告_2025-04-22.pdf
- 301369_2024_#ESG_联动科技_2024年度环境、社会与公司治理(ESG)报告_2025-04-18.pdf
- 300937_2024_#SD_药易购_2024年度可持续发展报告_2025-04-25.pdf
- 300621_2024_#ESG_维业股份_维业股份:2024年度环境、社会和公司治理(ESG)报告_2025-04-19.pdf
- 300428_2024_#SD_立中集团_立中四通轻合金集团股份有限公司2024年度可持续发展报告-中文版_2025-04-21.pdf
- 301167_2024_#ESG_建研设计_2024年度环境、社会及公司治理(ESG)报告_2025-04-04.pdf
文档评论(0)