操作系统PV操作习题课.ppt

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

P,V操作习题课 主讲人:张婷 Buffer:integer; Se,Sf:semaphore; Se:=1;Sf:=0; Process producer Begin Repeat Produce a product; Wait(Se); Buffer:=product; Signal(Sf); Until false End; Process consumer Begin Repeat Wait(Sf); Take a product; Signal(Se); Consumer; Until false End; B:array[0..n-1] of integer; in,out:integer; in:=out:=0; Se,Sf:semaphore; Se:=n;Sf:=0; Process producer Begin Repeat Produce a product; Wait(Se); B[in]:=product; in:=(in+1) mod n; Signal(Sf); Until false End; Process consumer Begin Repeat Wait(Sf); Take a product from B[out]; out:=(out+1) mod n; Signal(Se); Consumer; Until false End; 吃水果问题2 题目:桌上有一只盘子,允许存放一个水果,父亲专向盘中放苹果,母亲专向盘中放桔子,儿子专等吃盘里的桔子,女儿专等吃盘里的苹果。只要盘子空,则父亲或母亲可向盘中放水果,仅当盘中有自己需要的水果时,儿子或女儿可从中取出。 请给出四人之间的同步关系,并用PV操作实现四人正确活动的程序。 吃水果问题2 分析:四人之间的关系: 1父亲、母亲要互斥使用盘子,所以两者之间是互斥关系; 2父亲放的苹果,女儿吃,所以两者是同步关系; 3母亲放的桔子,儿子吃,所以两者也是同步关系。 semaphore S_Plate=1, S_Apple=0, S_Orange=0; void father( ) // 父亲进程 { while(1) { P(S_Plate); 往盘子中放入一个苹果; V(S_Apple); } } void mother( ) // 母亲进程 { while(1) { P(S_Plate); 往盘子中放入一个桔子; V(S_Orange); } } void son( ) // 儿子进程 { while(1) { P(S_Orange); 从盘中取出一个 桔子; V(S_Plate); 吃桔子; } } void daughter( ) // 女儿进程 { while(1) { P(S_Apple); 从盘中取出一个 苹果; V(S_Plate); 吃苹果; } } 取动物问题 题目:有一只铁笼子,每次只能放入一只动物,猎人向笼中放入老虎,农民向笼中放入猪,动物园等待取笼中的老虎,饭店等待取笼中的猪。 试用P、V操作写出能同步执行的程序。 取动物问题 分析:四者之间的关系: 1.猎人和农民要互斥使用笼子,所以两者之间是互斥关系; 2.猎人放老虎,动物园取老虎,所以两者是同步关系; 3.农民房猪,饭店取猪,所以两者也是同步关系。 7.在下面的叙述中,不正确的是( )。 A.一个进程可创建一个或多个线程 B.一个线程可创建一个或多个线程 C.一个线程可创建一个或多个进程 D.一个进程可创建一个或多个进程 8.若系统中只有用户级线程,则处理机调度单位是( )。 A.线程 B.进程 C.程序 D.作业 9.下列几种关于进程的叙述,( )最不符合操作系统对进程的理解? A.进程是在多程序并行环境中的完整的程序。 B.进程可以由程序、数据和进程控制块描述。 C.线程是一种特殊的进程。 D.进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。 C B A 10.在下面的叙述中正确的是( )。 A.线程是比进程更小的能独立运行的基本单位。 B.引入线程可提高程序并发执行的程度,可进一

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档