- 1、本文档共36页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
信号量是荷兰计算机科学家Dijkstra65年提出
§4.3 信号量 (P,V操作);2. P,V操作;P,V操作的功能描述见下图:; P,V操作可用软件(或固件)和硬件来执行。无论P操作和V操作,它们的执行都必须是一个 不可被中断的整体。;例:S = 4;本书原来使用P、V操作来称呼此两操作,但由于信号量和信号量上的同步原语以及后面要讨论的管程均已成为并行程序语言的组成部分,所以改用程序语言中的习惯称呼,以及国际上较流行的称呼为Wait和Signal操作。;3. 当进程必须在信号量S上等待时,就将该进程的状态变为等待状态(或活动阻塞状态),并将该进程插入与此信号量有关的等待队列中,而后让出处理机给其它就绪进程。;(2) “ 阻塞等待”执行分式:;wait(s): S.value: = S. value ? 1;
if S. value 0 (说明 S原 ? 0或1,无资源)
then begin
Insert (*, S. L);
{把调用者进程*的进程控制块PC B插入信号量S的等待队列L中}
Block (*);
{把调用者进程变为阻塞,并调用进程调度程序以便选一新的就绪进程到处理机上运行}
end;signal(s): S. value: = S.value + 1
if S. value ? 0 (说明: S. Value原?–1,处在等待队列中)
then begin
Remove (S. L, id);
{在信号量S的阻塞队列L中,选一进程移出队列,并把进程标识号(PCB)送入id中}
Wakeup (id);
{把该进程id的状态转换或活动就绪状态,并根据id进程的优先数高低决定是否需要抢占现行进程的处理机}
end;阻塞等待的同步原语一般适用于单处理器系统,忙等待的同步原语一般适用于多处理器系统。因为在单处理器系统中使用忙等待方式将造成处理器时间较大的浪费。而在多处理器系统中忙等待方式造成的处理器时间的浪费,由于临界段通常很短而可以忍受。而且忙等待方式可以减少进程间开关的开销。;一、利用信号量实现互斥;begin
muter: = 1; {共享资源只有1个}
cobegin
PA: begin
var N: integer;
P(mutex);
N: =count; N: =N+1; count: =N;
V(mutex);
end
PB: begin
var M: integer;
P(mutex);
M: = count; M: =M+1; count: =M;
V(mutex);
end;
coend
end;[例2] 几个进程共同执行时互斥;二、利用信号量实现同步;信号量作为进程的阻塞和唤醒机构;例如两个协同进程A和B,进程A要等待进程B的计算结果。则这两个进程的执行如下:;[例1]. (第一类); Pragram
begin SB: = 0
SC: = 0
Cobegin
PA: Begin
?
V(SB)
V(SC)
end
PB: Begin
P(SB)
?
end
Coend
end ;其他同步的例子;(2) 举例;解:信号量:SA ––– 缓冲区是否有结果;[注
您可能关注的文档
- 中国煤层气钻井完井技术发展现状与发展方向.pdf
- 中央电大网络形考汉语基础2与答案2.doc
- 中国农业碳排放时空特征与影响因素分解_李波(da).pdf
- 中小企业调研问卷(机械设计制造与其自动化).doc
- 中山大学VB第三章习题.ppt
- 中南大学c语言判断结构.ppt
- 中国外交关系突破70年代.ppt
- 中国家庭资产组合选择_健康状况与风险偏好.pdf
- 中低压开关与元件.ppt
- 中过超温总结分析与防范措施.doc
- 【安全经验分享】镇江新区金科·祥生悦园建设工地宿舍“3·8”较大火灾事故 1根香烟,7条人命!6人追刑!.pptx
- 面向类集成测试序列生成问题的深度强化学习方法研究.pdf
- 包含电热氢多元储能的综合能源系统能量管理策略研究.pdf
- H公司食品机生产项目工时管理优化研究.pdf
- 上覆充水型溶洞对巷道围岩稳定性的影响及控制技术研究.pdf
- 松散层底部黏土层渗透破坏试验及数值模拟研究.pdf
- 凉水井煤矿薄煤层大跨度开切眼空顶距与支护技术研究.pdf
- 基于功能可用性的家用制氧机造型设计研究.pdf
- 基于原子力显微镜技术的神经细胞药物刺激响应研究.pdf
- 电力电子变换器直流母线电容状态在线监测方法研究.pdf
文档评论(0)