(并发性互丝斥和同步)86.ppt

  1. 1、本文档共108页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(并发性互丝斥和同步)86

CHAPTER 5 Concurrency: Mutual Exclusion and Synchronization (并发性:互斥和同步);Concurrency (并发性);Concurrency;5.1 PRINCIPLES OF NCURRENCY (并发的原理);A Simple Example;A Simple Example;Operating System Concerns (操作系统关注的问题);Process Interaction;表5.1进程的交互 ;Competition Among Processes for Resources;Competition Among Processes for Resources;Competition Among Processes for Resources;Mutual Exclusion Mechanism 互斥机制;Cooperation Among Processes by Sharing (进程间由于共享合作);Cooperation Among Processes by Communication (进程间由于通信的合作) ;Requirements for Mutual Exclusion (互斥的要求);Requirements for Mutual Exclusion (互斥的要求);Requirements for Mutual Exclusion (互斥的要求);Approaches of Mutual Exclusion (互斥的方法) ;5.2 Software Approaches;Dekker’s Algorithm : First Attempt;Dekker’s Algorithm :;小黑版指示P1可进;var turn:0..1; {共享的全局变量} PROCESS 0 PROCESS 1 … … while turn≠0 do {nothing}; while turn ≠ 1 do {nothing}; critical section; critical section turn:=1; turn:=0; … … 解析 保证了互斥,但存在问题:进程“忙等”进入临界区;若黑板标志修改失败,其他进程永久阻塞;Dekker’s Algorithm ;图5.3 每个人有一个自己的小屋 (P199) 每个人只能检查,但不能修改其他人的黑板标志 若某人申请进入临界区,首先检查对方黑板是否为“false” 是,修改自己小屋黑板值为“true”,进入临界区执行,完毕,恢复黑板值为“false” 否,反复进入小屋,检查黑板标志,直到标志是“false”;;var flag : array [0..1] of boolean :false ; {共享全局变量} PROCESS 0 PROCESS 1 … … while flag[1] while flag[0] do {nothing}; do {nothing}; flag[0]:=true; flag[1]:=true; critical section; critical section flag[0]:=false; flag[1]:=false; … …;若进程执行完临界区,恢复自己标志为“false”失败,则其他进程永久阻塞。 This method does not guarantee mutual exclusion 分析以下执行顺序: P0:当flag[1]=false; 执行while

文档评论(0)

181****7523 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档