第二章B进程同步

上传人:壹****1 文档编号:568273337 上传时间:2024-07-23 格式:PPT 页数:87 大小:1.12MB
返回 下载 相关 举报
第二章B进程同步_第1页
第1页 / 共87页
第二章B进程同步_第2页
第2页 / 共87页
第二章B进程同步_第3页
第3页 / 共87页
第二章B进程同步_第4页
第4页 / 共87页
第二章B进程同步_第5页
第5页 / 共87页
点击查看更多>>
资源描述

《第二章B进程同步》由会员分享,可在线阅读,更多相关《第二章B进程同步(87页珍藏版)》请在金锄头文库上搜索。

1、2.3 2.3 2.3 2.3 进程同步进程同步进程同步进程同步进程的同步关系进程的同步关系进程的同步关系进程的同步关系进程的同步原则进程的同步原则进程的同步原则进程的同步原则信号量信号量信号量信号量袄捂坠粗颤河差仪站郸陶监立荤胁柔拟钎儒系已被闰血龟世姻烫蔼箭琢误第二章B进程同步第二章B进程同步1程序(间)并发执行的特征:程序(间)并发执行的特征:n程序运行时独占资源程序运行时独占资源程序程序程序程序a aN=3;N=3;print(N)print(N)N=N+1N=N+1print(N)print(N)K=5;K=5;print(K)print(K)K=K+1K=K+1print(K)pri

2、nt(K)程序程序程序程序b b顺序执行顺序执行顺序执行顺序执行abab打印结果:打印结果:打印结果:打印结果:34563456并发执行并发执行并发执行并发执行abab1 12 23 34 45 56 67 78 81 12 23 34 45 56 67 78 8打印结果:打印结果:打印结果:打印结果:35463546资源非封闭资源非封闭资源非封闭资源非封闭挡杉任驼训铱冰册删仓帅讽豪读甚拇烹混浊漠萝即琶芯娟冒还鸡纂焙寂怔第二章B进程同步第二章B进程同步2进程的同步进程的同步n进程同步问题的提出进程同步问题的提出u进程异步推进可能造成混乱进程异步推进可能造成混乱u混乱可能导致不可再现混乱可能导致

3、不可再现n进程同步目标进程同步目标维持进程并发性维持进程并发性维持进程并发性维持进程并发性以提高系统效率以提高系统效率以提高系统效率以提高系统效率进程执行异步(断续)进程执行异步(断续)进程执行异步(断续)进程执行异步(断续)资源的非封闭(共享)资源的非封闭(共享)资源的非封闭(共享)资源的非封闭(共享)结果不结果不结果不结果不可再现可再现可再现可再现进程同步进程同步进程同步进程同步进程间相互合作进程间相互合作进程间相互合作进程间相互合作资源有效共享资源有效共享资源有效共享资源有效共享结果可再现结果可再现结果可再现结果可再现怕欧雀硷遭颂疆蕊酒岩惟快癌磺傀赠络耗剂案枢吊鼎卜捡君渺邮宙赣瞩脉第二章

4、B进程同步第二章B进程同步3进程的同步关系进程的同步关系n2.3.1进程同步的基本概念进程同步的基本概念()u进程间的两种主要关系进程间的两种主要关系u临界资源与临界区临界资源与临界区u进程同步必须遵循的原则进程同步必须遵循的原则乡柏佣摹孔药障甥饱骋慎罗绎镭滴昏苟辞蔡鲸玖若侦猛彻镊绪获宦庭绪吁第二章B进程同步第二章B进程同步4n进程间的两种主要关系进程间的两种主要关系uu进程间的关系与进程间的独立性进程间的关系与进程间的独立性进程间的关系与进程间的独立性进程间的关系与进程间的独立性进程间的关系是在进程间相对独立的前提下进程间的关系是在进程间相对独立的前提下进程间的关系是在进程间相对独立的前提下

5、进程间的关系是在进程间相对独立的前提下发展的发展的发展的发展的vv独立获得资源独立获得资源独立获得资源独立获得资源vv独立调度独立调度独立调度独立调度踢细使瞬哮处妄霍尿嘴柯约玫携扛穴堂尿侵色辰韭陡肌暖问括帕臀嗡猎显第二章B进程同步第二章B进程同步5进程间的同步关系(一)进程间的同步关系(一)正常行车正常行车正常行车正常行车到站停车到站停车到站停车到站停车开车开车开车开车售票售票售票售票开车门开车门开车门开车门关车门关车门关车门关车门司机司机司机司机售票员售票员售票员售票员合作合作合作合作合作合作合作合作检查车况检查车况检查车况检查车况维持秩序维持秩序维持秩序维持秩序极忆慷灾耍痘街苔靳民置纸指粹

6、途荷骡穷贞瞅均龟牺配舌挑粒争墩维吹衙第二章B进程同步第二章B进程同步6获得打印数据获得打印数据获得打印数据获得打印数据进程间的同步关系(二)进程间的同步关系(二)打印进程打印进程打印进程打印进程1 1 1 1打印进程打印进程打印进程打印进程2 2 2 2打印打印打印打印打印打印打印打印互斥互斥互斥互斥获得打印数据获得打印数据获得打印数据获得打印数据捂雄尊凑眼膜幢弃膛宝让笆无誓包苇打阿扶顽漂表孽旋绊冷蛾纹湍依告朋第二章B进程同步第二章B进程同步7进程间的同步关系(三)进程间的同步关系(三)计算进程计算进程计算进程计算进程打印进程打印进程打印进程打印进程计算结果送到计算结果送到计算结果送到计算结果

7、送到BufferBuffer从从从从BufferBuffer中取数中取数中取数中取数BufferBuffer互斥互斥互斥互斥完成数据计算完成数据计算完成数据计算完成数据计算打印打印打印打印通知打印进程打印通知打印进程打印通知打印进程打印通知打印进程打印通知计算进程通知计算进程通知计算进程通知计算进程送下一个数送下一个数送下一个数送下一个数合作合作合作合作颐崭队雾始檬讲阵厌看疲挚蹿混睬蓬劝寨终刑必搀豢苍咙糜究硷抠墩蝴畏第二章B进程同步第二章B进程同步8进程间的同步关系进程间的同步关系司机与售票员司机与售票员司机与售票员司机与售票员多个打印者多个打印者多个打印者多个打印者计算者与打印者计算者与打印

8、者计算者与打印者计算者与打印者?其他例子?其他例子流水线生产流水线生产流水线生产流水线生产仓库仓库仓库仓库 两个队篮球比赛两个队篮球比赛两个队篮球比赛两个队篮球比赛梧邪归院吟伏蜘标沛京轧录椰蚊拦抚杨促闽监驳适独医泼耙冗介敢棘霸屹第二章B进程同步第二章B进程同步9两种形式的制约关系两种形式的制约关系n间接相互制约关系间接相互制约关系-源于资源共享,产生互斥问题源于资源共享,产生互斥问题n直接相互制约关系直接相互制约关系-源于进程间合作,产生同步问题源于进程间合作,产生同步问题常侥萌贱蛤惟滓蹈造雀门售邪椽写视捻涵峪怒央褂妓讲拘泡赵测惧凭即耽第二章B进程同步第二章B进程同步10正常行车正常行车正常行

9、车正常行车到站停车到站停车到站停车到站停车开车开车开车开车售票售票售票售票开车门开车门开车门开车门关车门关车门关车门关车门司机司机司机司机售票员售票员售票员售票员同步同步同步同步同步同步同步同步到站停车到站停车到站停车到站停车否否否否是是是是检查车况检查车况检查车况检查车况维持秩序维持秩序维持秩序维持秩序否否否否关车门关车门关车门关车门是是是是太淡浊慧玲扁迹笛顾肖灌掳昧葵缺市晶亭稿棘称橱绍敛筷抑皖兢墅奢本案第二章B进程同步第二章B进程同步11同步实现初探(二)同步实现初探(二)打印进程打印进程打印进程打印进程 1 1 1 1打印进程打印进程打印进程打印进程 2 2 2 2打印打印打印打印打印打

10、印打印打印互斥互斥互斥互斥获得打印数据获得打印数据获得打印数据获得打印数据获得打印数据获得打印数据获得打印数据获得打印数据打印机可用?打印机可用?打印机可用?打印机可用?设置打印机为不可用设置打印机为不可用设置打印机为不可用设置打印机为不可用是是是是否否否否打印机可用?打印机可用?打印机可用?打印机可用?设置打印机为不可用设置打印机为不可用设置打印机为不可用设置打印机为不可用是是是是否否否否毖焦华佳脆逐怯尿映穷绩我题糠翅查匡蝇徊踊侣璃已莲灵宛统怔戊瀑台朗第二章B进程同步第二章B进程同步12同步实现初探(三)同步实现初探(三)计算进程计算进程计算进程计算进程打印进程打印进程打印进程打印进程计算结

11、果送到计算结果送到计算结果送到计算结果送到BufferBuffer从从从从BufferBuffer中取数中取数中取数中取数BufferBuffer互斥互斥互斥互斥互斥互斥互斥互斥向打印进程发信号向打印进程发信号向打印进程发信号向打印进程发信号通知其从通知其从通知其从通知其从BufferBuffer里取数里取数里取数里取数BufferBuffer空?空?空?空?否否否否是是是是完成数据计算完成数据计算完成数据计算完成数据计算打印打印打印打印向计算进程发信号向计算进程发信号向计算进程发信号向计算进程发信号通知其向通知其向通知其向通知其向BufferBuffer送数送数送数送数BufferBuffe

12、r空?空?空?空?否否否否是是是是合作合作合作合作缺妈势沏技菌赦时汉峡斩北峪疚苫婆铡骡贬楼弗攀瑶讥的臼华哪导忆报并第二章B进程同步第二章B进程同步13进程间的同步关系进程间的同步关系n进程同步时面临的两种主要关系进程同步时面临的两种主要关系司机与售票员司机与售票员多个打印者多个打印者计算者与打印者计算者与打印者事件、设备等抽事件、设备等抽事件、设备等抽事件、设备等抽象为象为象为象为资源资源资源资源对进程间关系的处理变为对对进程间关系的处理变为对对进程间关系的处理变为对对进程间关系的处理变为对资源资源资源资源的访问方式的访问方式的访问方式的访问方式帖佰果抵戌歹速紧瓤焦窄筹抹盆墟艾盅腆走胁龟捎鬃嗽

13、铸淬晚池冶疮滥围第二章B进程同步第二章B进程同步14临界资源临界资源n临界资源临界资源uu临界资源临界资源临界资源临界资源一次只允许一个进程访问的资源一次只允许一个进程访问的资源一次只允许一个进程访问的资源一次只允许一个进程访问的资源资源状态为临界:资源状态为临界:资源状态为临界:资源状态为临界:00或或或或11最简单的资源最简单的资源最简单的资源最简单的资源生产者消费者生产者消费者的同步问题的同步问题产品仓仓 库库生产者生产者消费者消费者 生生产产者者把把产产品品生生产产出出来来,送送入入仓仓库库。给给消消费费者者发发信信号号,消消费费者者得得到到信信号号后后,到到仓仓库库取取产产品品,取取

14、走走产产品品后后给给生生产者发信号产者发信号倍惭窿眺婪蒲栈驮牲咽朱颖铂累贝褥幻被派咏剩矿罢佃役斯裔卸锦戮签映第二章B进程同步第二章B进程同步15临界区临界区u临界区临界区每个进程中用于访问临界资源的代码;每个进程中用于访问临界资源的代码;u同类临界区同类临界区:同类资源的临界区;:同类资源的临界区;u进入区进入区:在临界区前加上一段用于检查的代码;在临界区前加上一段用于检查的代码;u退出区退出区:在临界区后加上一段用于恢复临界区未被在临界区后加上一段用于恢复临界区未被访问的标志的代码;访问的标志的代码;u剩余区剩余区:除进入区、临界区及退出区之外的其它:除进入区、临界区及退出区之外的其它部分的

15、代码;部分的代码;威园铀遇寞隘恼氧俊项删景连办寝悟罢旋艘市炒坟哮尘降吻蛆寥辱丸俩捡第二章B进程同步第二章B进程同步20 repeatrepeat entry section entry section critical section; critical section; exit section exit section remainder section; remainder section; until false; until false;械洗削匪德夕钝诉棕裕弘惯披玲墨庸光尼篡彭务淆粟床章留脸涪撰暑孟闸第二章B进程同步第二章B进程同步21临界区临界区进入区进入区临界区临界区临界区临界区

16、退出区退出区进入区进入区临界区临界区临界区临界区退出区退出区.阻塞等待阻塞等待阻塞等待阻塞等待资源释放资源释放资源释放资源释放改变资源改变资源改变资源改变资源状态状态状态状态释放资源释放资源释放资源释放资源唤醒等待唤醒等待唤醒等待唤醒等待进程进程进程进程进程进程进程进程 1 1进程进程进程进程 2 2慨爹婉蛤郊腿搓拘贬妹恿户灯绝霄猖恿忿席仆磅布涪伙慷惕塞芝咬辛没成第二章B进程同步第二章B进程同步22同步四原则同步四原则n同步机制应遵循的原则同步机制应遵循的原则(十六字原则十六字原则)空闲让进空闲让进忙则等待忙则等待有限等待有限等待让权等待让权等待规砰倾挑础君湖耀骋耪方亏刊绣降揍休餐卵贯娘哨三务

17、搞蝴鸵锅聚郎札契第二章B进程同步第二章B进程同步23同步原则同步原则n进程同步应遵循的原则进程同步应遵循的原则uu空闲让进空闲让进空闲让进空闲让进当资源空闲时,应当允许访问资源的进程进入当资源空闲时,应当允许访问资源的进程进入当资源空闲时,应当允许访问资源的进程进入当资源空闲时,应当允许访问资源的进程进入临界区临界区临界区临界区uu忙则等待忙则等待忙则等待忙则等待当资源被占用时,应使申请访问该资源的进程当资源被占用时,应使申请访问该资源的进程当资源被占用时,应使申请访问该资源的进程当资源被占用时,应使申请访问该资源的进程等待,等待使用者归还资源等待,等待使用者归还资源等待,等待使用者归还资源等

18、待,等待使用者归还资源两个基本原则,必须遵循两个基本原则,必须遵循两个基本原则,必须遵循两个基本原则,必须遵循咀泵诡写啮烦模仓凡蘑暮奄脂靶理剐捅裕烟胰痔喧萄筑辨响溢惊紊楷薪香第二章B进程同步第二章B进程同步24同步原则同步原则n进程同步应遵循的原则进程同步应遵循的原则uu让权等待让权等待让权等待让权等待在进程等待资源时,从执行态转为阻塞态,应在进程等待资源时,从执行态转为阻塞态,应在进程等待资源时,从执行态转为阻塞态,应在进程等待资源时,从执行态转为阻塞态,应当让出当让出当让出当让出CPUCPU的使用权。系统将把的使用权。系统将把的使用权。系统将把的使用权。系统将把CPUCPU分配给其分配给其

19、分配给其分配给其它进程使用,以提高系统效率它进程使用,以提高系统效率它进程使用,以提高系统效率它进程使用,以提高系统效率. .防止防止防止防止” ”忙等忙等忙等忙等” ”uu有限等待有限等待有限等待有限等待系统应保证等待的进程能在有限的时间内获得系统应保证等待的进程能在有限的时间内获得系统应保证等待的进程能在有限的时间内获得系统应保证等待的进程能在有限的时间内获得资源,继续执行,以防止无限等待浪费该进程资源,继续执行,以防止无限等待浪费该进程资源,继续执行,以防止无限等待浪费该进程资源,继续执行,以防止无限等待浪费该进程已占用的资源已占用的资源已占用的资源已占用的资源. .防止防止防止防止”

20、”死等死等死等死等” ”蒜吕搐湾缉宝麦铀叮冕叭绳许呵崇揉湿孩槽誉唉瞄碳审砒珠勋斯彼募慰勺第二章B进程同步第二章B进程同步25锁机制锁机制n临界资源锁机制临界资源锁机制uu例:商场的试衣间例:商场的试衣间例:商场的试衣间例:商场的试衣间是互斥资源是互斥资源是互斥资源是互斥资源是临界资源是临界资源是临界资源是临界资源是共享资源是共享资源是共享资源是共享资源每个顾客必须遵循以下过程使用试衣间:每个顾客必须遵循以下过程使用试衣间:每个顾客必须遵循以下过程使用试衣间:每个顾客必须遵循以下过程使用试衣间:靠锁实现资源的共享管理靠锁实现资源的共享管理靠锁实现资源的共享管理靠锁实现资源的共享管理观察锁状态观察

21、锁状态观察锁状态观察锁状态关锁关锁关锁关锁使用试衣间使用试衣间使用试衣间使用试衣间开锁开锁开锁开锁佰盾张勺火绷书计窥能症谆楷瘩错嫌绘驱协皂侧缩悯蛔肌产瞒政沈诡宏绿第二章B进程同步第二章B进程同步26锁机制锁机制n临界资源锁机制临界资源锁机制锁锁锁锁锁变量锁变量锁变量锁变量L L每个进程必须按照以下过程操作资源每个进程必须按照以下过程操作资源每个进程必须按照以下过程操作资源每个进程必须按照以下过程操作资源L=1L=1关闭状态,资源忙关闭状态,资源忙关闭状态,资源忙关闭状态,资源忙L=0L=0打开状态,资源空闲打开状态,资源空闲打开状态,资源空闲打开状态,资源空闲抽象抽象抽象抽象L=1L=1临界区

22、临界区临界区临界区L=0L=0旅柯闰坑滴他阵灰菲耶橡颜馈众簇膏丽焕蛹哼湃闪铃桨二茨滦宪棚遮躁琳第二章B进程同步第二章B进程同步27锁机制实现锁机制实现n一种简单的锁操作实现一种简单的锁操作实现voidlock(L)voidlock(L)check:check:if(L=1)if(L=1)gotocheck;gotocheck;elseelseL=1;L=1; voidunlock(L)voidunlock(L)L=0;L=0; 残谗独歉便萍建邢延偏物猜匈靳萤偶傅妖崖利漓早拒收叉揍沽潭零醋败菌第二章B进程同步第二章B进程同步28锁机制实现锁机制实现.check:if(L=1)check:if(L

23、=1)gotocheck;gotocheck;elseL=1;elseL=1;临界区临界区临界区临界区L L进程进程进程进程 1 1 1 1进程进程进程进程 2 2 2 2unlock(L);unlock(L);.check:if(L=1)check:if(L=1)gotocheck;gotocheck;elseL=1;elseL=1;临界区临界区临界区临界区unlock(L);unlock(L);.0 01 10 0 1 1 0 0逗超诡饰底他跃妆臻盈错搀嫩片猴株咙签庞挤承禽舒棘眺啥纬崖复熔河讣第二章B进程同步第二章B进程同步29锁操作模型锁操作模型n锁操作的一般模型锁操作的一般模型PiPi

24、:.lock(L)C(i)unlock(L).lock(L)C(i)unlock(L).PjPj:.lock(L)C(j)unlock(L).lock(L)C(j)unlock(L).C(i):Pi的临界区的临界区Pi:进程进程i撒涅亡善凛迟溉搁忌览锋备炊恿浙钟唤版该侩环汐捶店纂硷大大雍行奔骆第二章B进程同步第二章B进程同步30出了问题的锁出了问题的锁.check:if(L=1)check:if(L=1)gotocheck;gotocheck;elseL=1;elseL=1;临界区临界区临界区临界区unlock(L);unlock(L);.check:if(L=1)check:if(L=1)g

25、otocheck;gotocheck;elseL=1;elseL=1;临界区临界区临界区临界区unlock(L);unlock(L);.出现问题的锁出现问题的锁出现问题的锁出现问题的锁进程进程进程进程 1 1 1 1进程进程进程进程 2 2 2 2L L0 01 1尚未执行尚未执行尚未执行尚未执行问题出在?问题出在?问题出在?问题出在?判断状态后判断状态后判断状态后判断状态后改变状态前改变状态前改变状态前改变状态前被打断被打断被打断被打断试谨课霹臂产主呆唱惊凯榔樊寅鹏牺悉磷缘啃幻舷旬喳跌励彰皆跌谈荣堪第二章B进程同步第二章B进程同步31锁机制实现锁机制实现n关锁操作不可被打断关锁操作不可被打断

26、uu用原语实现关锁操作用原语实现关锁操作用原语实现关锁操作用原语实现关锁操作uu关锁操作在一个指令周期内完成关锁操作在一个指令周期内完成关锁操作在一个指令周期内完成关锁操作在一个指令周期内完成软件方法软件方法软件方法软件方法硬件方法硬件方法硬件方法硬件方法n锁操作的特点:锁操作的特点:uu实现了进程互斥访问临界资源。实现了进程互斥访问临界资源。实现了进程互斥访问临界资源。实现了进程互斥访问临界资源。uu不遵循让权等待原则。不遵循让权等待原则。不遵循让权等待原则。不遵循让权等待原则。忙等忙等忙等忙等咬拂迷烛甜校仅痞辊汹嘛踩缩笼漠逾踪设筑觅衷供瓶傅具颁详刷拌棺待菊第二章B进程同步第二章B进程同步3

27、2n信号量机制:由信号量机制:由Dijkstra提出的一种解决进程的提出的一种解决进程的同步与互斥的工具:同步与互斥的工具:n n信号量信号量用于表示资源数目或请求使用某一资用于表示资源数目或请求使用某一资源的进程个数的整型量。源的进程个数的整型量。1.1.整型信号量整型信号量n nS S是与临界区内所使用的共享资源有关的信号量。是与临界区内所使用的共享资源有关的信号量。仅能通过两个标准的原子操作仅能通过两个标准的原子操作wait(s)wait(s)和和signal(s)signal(s)来访问。两个操作一直被分别称为来访问。两个操作一直被分别称为P P、V V操作。操作。2.3.2信号量机制

28、信号量机制信号量是比锁更高级的资源抽象方式信号量是比锁更高级的资源抽象方式信号量是比锁更高级的资源抽象方式信号量是比锁更高级的资源抽象方式wait(S): while S=0 do no-op S:=S-1;signal(S): S:=S+1;踢旺讶床酣嚎呀脖贯荐佰冗缚溉涂免巾油八竿毋然含嘱献颗圃茅抱脱羔蛮第二章B进程同步第二章B进程同步33经典信号量经典信号量n(2)经典信号量的)经典信号量的P,V操作操作u资源的申请与释放资源的申请与释放原语原语信号量:信号量:信号量:信号量:S SV V(s s)s=s+1s=s+1释放一个释放一个释放一个释放一个资源资源资源资源忙等忙等忙等忙等P P(

29、s s)s=0?s=0?s=s-1s=s-1N NY Y申请一个资源申请一个资源申请一个资源申请一个资源临界区临界区临界区临界区/ /资源访问区资源访问区资源访问区资源访问区脂便喉扯来渗塞颐硕瑞窗映哲痛析谬愤词盒衷请钾佃喀玉芋狙领格诬搀滦第二章B进程同步第二章B进程同步34P原语操作和原语操作和V原语操作原语操作nP原语操作的主要动作原语操作的主要动作uS1u如果如果S1以后仍大于等于零,则进程继续进行以后仍大于等于零,则进程继续进行u如果如果S1以后小于零,则将该进程阻塞以后插入阻塞以后小于零,则将该进程阻塞以后插入阻塞队列,然后转进程调度队列,然后转进程调度n nV V原语操作的主要动作原

30、语操作的主要动作原语操作的主要动作原语操作的主要动作uuS S1 1uu如果相加后结果大于零,则继续进行如果相加后结果大于零,则继续进行如果相加后结果大于零,则继续进行如果相加后结果大于零,则继续进行uu相加后结果小于等于零,则从该信号的等待队列中唤相加后结果小于等于零,则从该信号的等待队列中唤相加后结果小于等于零,则从该信号的等待队列中唤相加后结果小于等于零,则从该信号的等待队列中唤醒一个等待进程,然后返回原进程继续执行或者转进醒一个等待进程,然后返回原进程继续执行或者转进醒一个等待进程,然后返回原进程继续执行或者转进醒一个等待进程,然后返回原进程继续执行或者转进程调度。程调度。程调度。程调

31、度。掠刑础泼唱喝案左迅童恕笑梦听咒焦躁漠修铲夕辛噪版垫椎侮教顽宗回烂第二章B进程同步第二章B进程同步35入口s=s-1s0调度进程入等待队列转进程调度返回s.否value=0)if(S=0)继续执行;继续执行;继续执行;继续执行;elseelse阻塞并进入等待队列;阻塞并进入等待队列;阻塞并进入等待队列;阻塞并进入等待队列; VV操作操作V(S)S=S+1;if(S0)继续运行;继续运行;else唤唤醒醒等等待待队队列列中中的的一个进程,并继续运行;一个进程,并继续运行;信号量:信号量:PV操作操作弹族拥类罩曲痹嚏挟疗咕率絮丽奥阎夯泄涛厩倚堪揉生剩壹色棚嗽筑闲守第二章B进程同步第二章B进程同步

32、37记录型信号量记录型信号量n(2)记录型信号量)记录型信号量uu引入进程阻塞机制引入进程阻塞机制引入进程阻塞机制引入进程阻塞机制( (多个进程等待访问同一临界资多个进程等待访问同一临界资多个进程等待访问同一临界资多个进程等待访问同一临界资源的情况源的情况源的情况源的情况) )uu在信号量里增加对阻塞进程的纪录在信号量里增加对阻塞进程的纪录在信号量里增加对阻塞进程的纪录在信号量里增加对阻塞进程的纪录( (增加一个进程增加一个进程增加一个进程增加一个进程链表链表链表链表L)L)typeSemaphore=recordtypeSemaphore=recordvalue:integer;value:

33、integer;L:listofprocess;L:listofprocess;endend资源个数资源个数资源个数资源个数阻塞进程(阻塞进程(阻塞进程(阻塞进程(PCBPCB)队列)队列)队列)队列侵驻镭峨嘛毒袄廓窘券摘店检龙蹄骇哼酸钓么蕾枣勘炽受吊布跋链疼洞茶第二章B进程同步第二章B进程同步38记录型信号量的记录型信号量的P,V操作操作P(s)P(s)s.value=s.value-1s.value=s.value-1s.value0?s.value0?本进程获得本进程获得本进程获得本进程获得一个资源一个资源一个资源一个资源临界区临界区临界区临界区/ /资源访问区资源访问区资源访问区资源访

34、问区本进程进入本进程进入本进程进入本进程进入s.lists.list队列,进入阻塞队列,进入阻塞队列,进入阻塞队列,进入阻塞状态状态状态状态N NY YV(s)V(s)s.value=s.value+1s.value=s.value+1s.value=0?s.value=0?将将将将s.lists.list中中中中第一个进程第一个进程第一个进程第一个进程唤醒,唤醒,唤醒,唤醒,N NY Y屁擦慑咨星涂菲慨啼花泼胞食瑚夫贝暖督村谗梳侈漆激凶运札烦勃怂忙胡第二章B进程同步第二章B进程同步39P(s)和和V(s)操作原语操作原语void P(s) struct semaphore s; s.valu

35、e=s.value-1; if (s.value0) block(s.p); void v(s)struct semaphore s;s.value=s.value+1;if (s.value1)(n1)。 由由于于缓缓冲冲器器可可存存n n件件物物品品, ,因因此此, ,必必须须指指出出缓缓冲冲器器中中什什么么位位置置已已有有物物品品可可供供消消费费, ,什什么么位位置置尚尚无无物物品品可可供供生生产产者者存存放放物物品品。可可以以用用输输入入指指针针inin和和输输出出指指针针outout分分别别指指示示生生产产者者往往缓缓冲冲器器存存物物品品和和消消费费者者从从缓缓冲冲器器取取物物品品的

36、的相相对对位位置置, ,它它们们的的初初值值为为0 0, ,生生产产者者和和消消费费者者按按位位置置的的顺顺序序去去存存物物品品和和取取物物品品,缓缓冲冲池池被被循循环环使使用。用。 每每当当生生产产进进程程生生产产并并投投放放一一个个产产品品后后,输输入入指指针针加加1 1,由由于于缓缓冲冲池池循循环环使使用用,可可表表示示为为: in:=(in+1)mod n ;in:=(in+1)mod n ; 每每当当消消费费者者进进程程取取走走一一个个产产品品后后,输输出出指指针针加加1 1, 由由 于于 缓缓 冲冲 池池 循循 环环 使使 用用 , 可可 表表 示示 为为 :out:=(out+1

37、)mod n ;out:=(out+1)mod n ;灰赶歪魁囱涵裸岭澄骑惫惺弊邢袍夏辟甭馏棺五舒慢妊彭泊衰危涕炉郁廖第二章B进程同步第二章B进程同步63 当当(in+1)mod n =out (in+1)mod n =out 时,时,表示缓冲池满表示缓冲池满; 当当in = out in = out 时时 , ,表示缓冲池空表示缓冲池空; 局局部部变变量量nextpnextp: :生生产产者者用用于于暂暂时时存存放放刚刚生生产出的产品;产出的产品; 局局部部变变量量nextcnextc: :消消费费者者暂暂时时存存放放要要消消费费的的产品;产品;条答狮降糊辰迁驻旨皱谱她尧舌括舔槐罢娱咽埋肘炙

38、凛先缸凿原脯综逻斜第二章B进程同步第二章B进程同步64生产者消费者问题生产者消费者问题生产者生产的产品放入缓冲池内;生产者生产的产品放入缓冲池内;生产者生产的产品放入缓冲池内;生产者生产的产品放入缓冲池内;消费者从缓冲池内取走产品消费;消费者从缓冲池内取走产品消费;消费者从缓冲池内取走产品消费;消费者从缓冲池内取走产品消费;消费者消费后的空白缓冲区供生产者使用。消费者消费后的空白缓冲区供生产者使用。消费者消费后的空白缓冲区供生产者使用。消费者消费后的空白缓冲区供生产者使用。规则:规则:规则:规则:有空的有空的有空的有空的bufferbuffer时生产者便可将产品送入缓冲池。时生产者便可将产品送

39、入缓冲池。时生产者便可将产品送入缓冲池。时生产者便可将产品送入缓冲池。有满的有满的有满的有满的bufferbuffer时消费者可从中取走产品。时消费者可从中取走产品。时消费者可从中取走产品。时消费者可从中取走产品。消费者与生产者互斥地访问缓冲区。消费者与生产者互斥地访问缓冲区。消费者与生产者互斥地访问缓冲区。消费者与生产者互斥地访问缓冲区。密峦酒萧北探旗换池骚佑索我经策毛央寄瓜坦氦剪案倚咱洲坞名找甜陛衙第二章B进程同步第二章B进程同步65生产者消费者算法分析生产者消费者算法分析n算法分析算法分析uu两类进程:生产者进程和消费者进程两类进程:生产者进程和消费者进程两类进程:生产者进程和消费者进程

40、两类进程:生产者进程和消费者进程uu(1 1)进程间的关系)进程间的关系)进程间的关系)进程间的关系生产者生产产品后消费者消费生产者生产产品后消费者消费生产者生产产品后消费者消费生产者生产产品后消费者消费消费者消费后的空白缓冲块由生产者存放产品消费者消费后的空白缓冲块由生产者存放产品消费者消费后的空白缓冲块由生产者存放产品消费者消费后的空白缓冲块由生产者存放产品两个进程在使用缓冲区时的关系两个进程在使用缓冲区时的关系两个进程在使用缓冲区时的关系两个进程在使用缓冲区时的关系合作关系合作关系合作关系合作关系互互互互斥斥斥斥关关关关系系系系碌仰潮削槽溜炽毕捧气经涣忻萧骗梭沮闯潦挛旗榷早秉泄讣虐岳障冲

41、眶均第二章B进程同步第二章B进程同步66生产者消费者算法分析生产者消费者算法分析n信号量信号量ufull:缓冲池中满缓冲区的数量:缓冲池中满缓冲区的数量uempty:缓冲池中空缓冲区的数量:缓冲池中空缓冲区的数量umutex:实现各进程对缓冲池的互斥使用:实现各进程对缓冲池的互斥使用素麻明操颐叙轨匝黍甘孙渐悸菱误观给啡烯剥泼锨棕铜纱钒疗笋荷卢寐妖第二章B进程同步第二章B进程同步67利用记录型信号量实现利用记录型信号量实现Varmutex,empty,full:semaphore:=1,n,0;buffer:array0,n-1ofitem;in,out:integer:=0,0producer

42、:beginrepeatproduceanitemnextp;P(empty);P(mutex);Buffer(in):=nextp;In:=(in+1)modn;V(mutex);V(full);Untilfalse;endconsumer:beginrepeatP(full);P(mutex);nextc:=buffer(out);out:=(out+1)modn;V(mutex);V(empty);consumertheiteminnextc;Untilfalse;end匿芦椰般听蜗谬耐醇饲涵鲤呀彼喀菩饶赴夏控零棒仿戮呈饱阳脚价徽持歼第二章B进程同步第二章B进程同步68 P P操操作作的

43、的顺顺序序是是很很重重要要的的, ,如如果果把把生生产产者者和和消消费费者者进进程程中中的的两两个个P P操操作作交交换换顺顺序序, ,则则会会导导致致错错误误。而而V V操操作作的的顺顺序序却却是是无无关关紧紧要要的的。一一般般来来说说, ,用用于于同同步步的的信信号号量量上上的的P P操操作作在在前前执执行行, ,而用于互斥的信号量上的而用于互斥的信号量上的P P操作在后执行。操作在后执行。宾锐距亡闺蜕税隶伯把膜铸揭沙嗡庸亢母维幸逞墙痹肌干卞嗡庚折酿闭峨第二章B进程同步第二章B进程同步69利用利用AND型信号量实现型信号量实现Producer:produceanitemnextp;P(em

44、pty,mutex)Buffer(in):=nextp;In:=(in+1)modn;V(mutex,full);consumer:P(full,mutex);nextc:=buffer(out);out:=(out+1)modn;V(mutex,empty);Consumertheiteminnextc;用用P(empty,mutex)代替代替p(empty); 和和p(mutex);拦营温随冤滓囱释唁均把叔表冶愁民苛螟侣沛谓电躁弘朱堂改属劝产眯瑟第二章B进程同步第二章B进程同步70生产者消费者算法小结生产者消费者算法小结n小结:小结:uu在分析进程同步问题中,逐个分析进程间的关系在分析进程

45、同步问题中,逐个分析进程间的关系在分析进程同步问题中,逐个分析进程间的关系在分析进程同步问题中,逐个分析进程间的关系是关键是关键是关键是关键uu不管多复杂的关系,总能归结为两种基本关系不管多复杂的关系,总能归结为两种基本关系不管多复杂的关系,总能归结为两种基本关系不管多复杂的关系,总能归结为两种基本关系(竞争与合作),总是这两种关系的组合(竞争与合作),总是这两种关系的组合(竞争与合作),总是这两种关系的组合(竞争与合作),总是这两种关系的组合uu不管公用还是私用,信号量的使用必须成对出现不管公用还是私用,信号量的使用必须成对出现不管公用还是私用,信号量的使用必须成对出现不管公用还是私用,信号

46、量的使用必须成对出现照挛秋博俩局脓璃柬辰张酱剃壶界脆逻涣徽奎帆宜狭旭玻乐膝霸腹享骗梧第二章B进程同步第二章B进程同步71n n和尚打水问题和尚打水问题某寺庙有小、老和尚若干,有一水缸,由小和尚提水入缸供某寺庙有小、老和尚若干,有一水缸,由小和尚提水入缸供某寺庙有小、老和尚若干,有一水缸,由小和尚提水入缸供某寺庙有小、老和尚若干,有一水缸,由小和尚提水入缸供老和尚饮用。水缸可以容纳老和尚饮用。水缸可以容纳老和尚饮用。水缸可以容纳老和尚饮用。水缸可以容纳1010桶水,水取自同一井水。水井狭窄,桶水,水取自同一井水。水井狭窄,桶水,水取自同一井水。水井狭窄,桶水,水取自同一井水。水井狭窄,每次只能容

47、一个桶取水。水桶总数为每次只能容一个桶取水。水桶总数为每次只能容一个桶取水。水桶总数为每次只能容一个桶取水。水桶总数为3 3个。每次入、出水缸仅一桶,个。每次入、出水缸仅一桶,个。每次入、出水缸仅一桶,个。每次入、出水缸仅一桶,且不可同时进行。试给出有关取水、入水的算法描述。且不可同时进行。试给出有关取水、入水的算法描述。且不可同时进行。试给出有关取水、入水的算法描述。且不可同时进行。试给出有关取水、入水的算法描述。 扎由条靴始彩愿汰箭淆错蜂榷戮频一瘟珍诗匀貌矛铸昭防乃婆鲍伟邢烈蒙第二章B进程同步第二章B进程同步72Varmutex1,mutex2,empty,full,count:semap

48、hore;mutex1:=1;mutex2:=1;empty:=10;full:=0;count:=3; process小和尚:beginrepeatP(empty);P(count);P(mutex1);从井中取水;V(mutex1);P(mutex2);送水入水缸;V(mutex2);V(count);V(full);untilfalse;endprocess老和尚:beginrepeatP(full);P(count);P(mutex2);从缸中取水;V(mutex2);V(empty);V(count);untilfalse;end陵苏箭麓裁闽建污机刀唐堂硷中蝗做衰吮荒覆医砍荧厢啦肺亢

49、踏晨固丙赞第二章B进程同步第二章B进程同步73哲学家问题哲学家问题n n哲学家进餐问题哲学家进餐问题uu问题描述问题描述问题描述问题描述五位哲学家围桌而坐五位哲学家围桌而坐五位哲学家围桌而坐五位哲学家围桌而坐哲学家在思考问题时哲学家在思考问题时哲学家在思考问题时哲学家在思考问题时不需要任何资源,思考不需要任何资源,思考不需要任何资源,思考不需要任何资源,思考完问题后进入进餐态。完问题后进入进餐态。完问题后进入进餐态。完问题后进入进餐态。每人必须获得左右两每人必须获得左右两每人必须获得左右两每人必须获得左右两支筷子才能进餐支筷子才能进餐支筷子才能进餐支筷子才能进餐思考思考思考思考思考思考思考思考

50、思考思考准备进餐准备进餐进餐进餐准备进餐准备进餐进餐进餐幼豹焚獭在馋滤糯辙键署鹰对傻肝陪磐码塞鳞擦糊拼诅坠侣唤衰她蛰治腥第二章B进程同步第二章B进程同步78哲学家问题分析哲学家问题分析死锁死锁思考思考思考思考思考思考思考思考思考思考准备进餐准备进餐准备进餐准备进餐准备进餐准备进餐准备进餐准备进餐准备进餐准备进餐思考思考思考思考p p(left_stickleft_stick)p p(right_stick)right_stick)v v(right_stick)right_stick)v v(left_stickleft_stick)eateat沉君版叁羔跃泅名起给安粮掀篡彪首硼源隐细释蒂磕码

51、命倡候吏垣焚升稚第二章B进程同步第二章B进程同步791.1.在多进程的系统中在多进程的系统中在多进程的系统中在多进程的系统中, ,为了保证公共变量的完整性为了保证公共变量的完整性为了保证公共变量的完整性为了保证公共变量的完整性, ,各进程应互各进程应互各进程应互各进程应互斥进入临界区斥进入临界区斥进入临界区斥进入临界区, ,所谓临界区是指所谓临界区是指所谓临界区是指所谓临界区是指()()A.A.一个缓冲区一个缓冲区一个缓冲区一个缓冲区B.B.一段数据区一段数据区一段数据区一段数据区C.C.同步机制同步机制同步机制同步机制D.D.一段程序一段程序一段程序一段程序2.2.一个进程是一个进程是一个进

52、程是一个进程是()() A.A.由协处理机执行的一个程序由协处理机执行的一个程序由协处理机执行的一个程序由协处理机执行的一个程序B.B.一个独立的一个独立的一个独立的一个独立的程序程序程序程序+ +数据集数据集数据集数据集C.PCBC.PCB结构与程序和数据的组合结构与程序和数据的组合结构与程序和数据的组合结构与程序和数据的组合D.D.一个独立的一个独立的一个独立的一个独立的程序程序程序程序3.3.设有设有设有设有5 5个进程共享一个互斥段个进程共享一个互斥段个进程共享一个互斥段个进程共享一个互斥段, ,如果最多允许有如果最多允许有如果最多允许有如果最多允许有3 3个进程同时个进程同时个进程同

53、时个进程同时进入互斥段进入互斥段进入互斥段进入互斥段, ,则所采用的互斥信号量的初值应是则所采用的互斥信号量的初值应是则所采用的互斥信号量的初值应是则所采用的互斥信号量的初值应是()()A.5B.3C.1D.0A.5B.3C.1D.04.N4.N个进程共享某一临界资源个进程共享某一临界资源个进程共享某一临界资源个进程共享某一临界资源, ,则互斥信号量的取值范围为则互斥信号量的取值范围为则互斥信号量的取值范围为则互斥信号量的取值范围为() ) A.01B.10C.1-(N-1)D.0-(N-1)A.01B.10C.1-(N-1)D.0-(N-1)D DC CB BC C酝鼻食基枷痢罗针份捉蜡鸣惭

54、画赛靡眷恐啮舰氮篮俺偶算膳起胯转疆辕搅第二章B进程同步第二章B进程同步805.5.对两个并发进程对两个并发进程对两个并发进程对两个并发进程, ,其互斥信号量为其互斥信号量为其互斥信号量为其互斥信号量为mutex;mutex;若若若若mutex=0,mutex=0,则表则表则表则表明明明明()()。 A.A.没有进程进入临界区没有进程进入临界区没有进程进入临界区没有进程进入临界区B.B.有一个进程进入临界区有一个进程进入临界区有一个进程进入临界区有一个进程进入临界区C.C.一个进程进入临界区而另一个进程正处于等待进入临界区一个进程进入临界区而另一个进程正处于等待进入临界区一个进程进入临界区而另一

55、个进程正处于等待进入临界区一个进程进入临界区而另一个进程正处于等待进入临界区状态状态状态状态D.D.有两个进程进入临界区有两个进程进入临界区有两个进程进入临界区有两个进程进入临界区6.6.若有若有若有若有3 3个进程共享一个互斥段个进程共享一个互斥段个进程共享一个互斥段个进程共享一个互斥段, ,每次最多允许两个进程进入每次最多允许两个进程进入每次最多允许两个进程进入每次最多允许两个进程进入互斥段互斥段互斥段互斥段, ,则信号量的变化范围是则信号量的变化范围是则信号量的变化范围是则信号量的变化范围是()() A.2,1,0,-1B.3,2,1,0C.2,1,0,-1,-2D.1,0,-1,-2A

56、.2,1,0,-1B.3,2,1,0C.2,1,0,-1,-2D.1,0,-1,-27.7.对于给定的信号量对于给定的信号量对于给定的信号量对于给定的信号量ss,等待操作,等待操作,等待操作,等待操作P P(s s)定义为:)定义为:)定义为:)定义为:ifs0ifs0thenthen()eleseles挂起调用的进程。挂起调用的进程。挂起调用的进程。挂起调用的进程。A As:=0B.s:=s+1s:=0B.s:=s+1C.s:=s-1D.s:=1C.s:=s-1D.s:=1B BA AC C遵赊耗换键督蔚泽住迈将盅儡乔瞥逮桅韩朋本缆迟狮拌诽鄂躺棒汁管萧太第二章B进程同步第二章B进程同步818

57、.8.并发进程之间并发进程之间并发进程之间并发进程之间()()A.A.彼此无关彼此无关彼此无关彼此无关B.B.必须同步必须同步必须同步必须同步C.C.必须互斥必须互斥必须互斥必须互斥D.D.可能需要同步或互斥可能需要同步或互斥可能需要同步或互斥可能需要同步或互斥9.9.当当当当()()时时时时, ,进程从执行状态转变为就绪状态。进程从执行状态转变为就绪状态。进程从执行状态转变为就绪状态。进程从执行状态转变为就绪状态。 A.A.进程被调度程序选中进程被调度程序选中进程被调度程序选中进程被调度程序选中B.B.时间片到时间片到时间片到时间片到B.B.等待某一事件等待某一事件等待某一事件等待某一事件D

58、.D.等等等等待的事件发生待的事件发生待的事件发生待的事件发生10.10.支持多道程序设计的操作系统在运行过程中,不断地选择支持多道程序设计的操作系统在运行过程中,不断地选择支持多道程序设计的操作系统在运行过程中,不断地选择支持多道程序设计的操作系统在运行过程中,不断地选择新进程运行来实现新进程运行来实现新进程运行来实现新进程运行来实现CPUCPU的共享,但其中(的共享,但其中(的共享,但其中(的共享,但其中() 不是不是不是不是引起操作系统选择新进程的直接原因。引起操作系统选择新进程的直接原因。引起操作系统选择新进程的直接原因。引起操作系统选择新进程的直接原因。A.A.运行进程的时间片用完运

59、行进程的时间片用完运行进程的时间片用完运行进程的时间片用完B.B.运行进程出错运行进程出错运行进程出错运行进程出错C.C.运行进程要等待某一事件的发生运行进程要等待某一事件的发生运行进程要等待某一事件的发生运行进程要等待某一事件的发生D.D.有新进程进入就绪状态有新进程进入就绪状态有新进程进入就绪状态有新进程进入就绪状态D DB BD D冶赔针将篆命绷牙软斧贝焕迸肚膳挠牲拖啪信单哉证亿货褒寿草哟芍慎仑第二章B进程同步第二章B进程同步82 11.11.多道程序设计是指多道程序设计是指多道程序设计是指多道程序设计是指()()A.A.在实时系统中并发运行多个程序在实时系统中并发运行多个程序在实时系统

60、中并发运行多个程序在实时系统中并发运行多个程序B.B.在分布系统中同一时刻运行多个程序在分布系统中同一时刻运行多个程序在分布系统中同一时刻运行多个程序在分布系统中同一时刻运行多个程序C.C.在一台处理机上同一时刻运行多个程序在一台处理机上同一时刻运行多个程序在一台处理机上同一时刻运行多个程序在一台处理机上同一时刻运行多个程序 D.D.在一台处理机上并发运行多个程序在一台处理机上并发运行多个程序在一台处理机上并发运行多个程序在一台处理机上并发运行多个程序12.12.下面临界区概念论述正确的是下面临界区概念论述正确的是下面临界区概念论述正确的是下面临界区概念论述正确的是()()A.A.临界区是指进

61、程中用于实现进程互斥的那段程序代码临界区是指进程中用于实现进程互斥的那段程序代码临界区是指进程中用于实现进程互斥的那段程序代码临界区是指进程中用于实现进程互斥的那段程序代码BB临界区是指进程中用于实现进程同步的那段程序代码临界区是指进程中用于实现进程同步的那段程序代码临界区是指进程中用于实现进程同步的那段程序代码临界区是指进程中用于实现进程同步的那段程序代码CC临界区是指进程中用于实现进程通信的那段程序代码临界区是指进程中用于实现进程通信的那段程序代码临界区是指进程中用于实现进程通信的那段程序代码临界区是指进程中用于实现进程通信的那段程序代码DD临界区是指进程中用于访问临界资源的那段程序代码临

62、界区是指进程中用于访问临界资源的那段程序代码临界区是指进程中用于访问临界资源的那段程序代码临界区是指进程中用于访问临界资源的那段程序代码. .13.13.下面对进程的描述中下面对进程的描述中下面对进程的描述中下面对进程的描述中, ,错误的是错误的是错误的是错误的是()()A.A.进程是动态的概念进程是动态的概念进程是动态的概念进程是动态的概念B.B.进程有生命进程有生命进程有生命进程有生命期期期期C.C.进程是指令的集合进程是指令的集合进程是指令的集合进程是指令的集合D.D.进程可以并进程可以并进程可以并进程可以并发执行发执行发执行发执行D DD DC C腮鸡攘辖钻筑诲俊耪存居谣营攘矢蔚抢闸屉

63、苞翠嘴扫警演报袖俯郴缎退涉第二章B进程同步第二章B进程同步83二二二二. .填空题填空题填空题填空题1.1.当系统创建一个进程时当系统创建一个进程时, ,系统就为其建立一个系统就为其建立一个( ),( ),当当进程被撤消时就将其回收。进程被撤消时就将其回收。3.3.如果系统中有如果系统中有n n个进程个进程, ,则在等待队列中进程的个数最多为则在等待队列中进程的个数最多为( ( ) )个。个。4.4.用用P P、V V操作管理临界区时操作管理临界区时, ,任何一个进程在进入临界区之前任何一个进程在进入临界区之前应调用应调用( )( )操作操作, ,在退出临界区时应调用在退出临界区时应调用( )

64、( )操操作。作。5.5.如果信号量的当前值为如果信号量的当前值为-4,-4,则表示系统中在该信号量上有则表示系统中在该信号量上有( ( ) )个等待进程。个等待进程。6.6.私有信号量是为了实现进程的私有信号量是为了实现进程的( )( )而设置的。而设置的。7.7.在单用户环境下,用户独占全机,此时机器内资源的状态,在单用户环境下,用户独占全机,此时机器内资源的状态,只能由运行程序的操作加以改变,此时程序的执行具有只能由运行程序的操作加以改变,此时程序的执行具有_和和_。三三三三. .简答题简答题简答题简答题1.1.比较进程与程序的区别。比较进程与程序的区别。2.2.进程有几种基本状态进程有

65、几种基本状态?.?.画出其转换关系图画出其转换关系图? ?PCBPCBn nP PV V4 4同步同步同步同步封闭性封闭性封闭性封闭性可再现性可再现性可再现性可再现性茬利厦诲暖赊泞李退模膏莉答帐尚高掣象势咎窘呸持纽伊渭召呐皆寅琉长第二章B进程同步第二章B进程同步843 3、进程之间存在哪几种相互制约关系?各是什么原、进程之间存在哪几种相互制约关系?各是什么原、进程之间存在哪几种相互制约关系?各是什么原、进程之间存在哪几种相互制约关系?各是什么原因引起的?下列活动分别属于哪种制约关系?因引起的?下列活动分别属于哪种制约关系?因引起的?下列活动分别属于哪种制约关系?因引起的?下列活动分别属于哪种制约关系?(1 1)若干同学去图书馆借同一本书;)若干同学去图书馆借同一本书;)若干同学去图书馆借同一本书;)若干同学去图书馆借同一本书;(2 2)两队举行篮球比赛;)两队举行篮球比赛;)两队举行篮球比赛;)两队举行篮球比赛;(3 3)流水线生产的各道工序;)流水线生产的各道工序;)流水线生产的各道工序;)流水线生产的各道工序;(4 4)商品生产和社会消费;)商品生产和社会消费;)商品生产和社会消费;)商品生产和社会消费;助吮朱赣抗掳状舜咎坎憾莽嚷胸侗话溉茬划铃罕饲寸佩确袄复绣论瀑鬃看第二章B进程同步第二章B进程同步85

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号