操作系统习题.ppt
《操作系统习题.ppt》由会员分享,可在线阅读,更多相关《操作系统习题.ppt(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、习题1、有两个优先级相同的进程、有两个优先级相同的进程P1和和P2,各自执行的,各自执行的操作如下,信号量操作如下,信号量S1和和S2初值均为初值均为0。试问。试问P1、P2并发执行后,并发执行后,x、y、z的值各为多少?的值各为多少?P1:P2:begin begin y:=1;x:=1;y:=y+2;x:=x+1;V(S1);P(S1);z:=y+1;x:=x+y;P(S2);V(S2);y:=z+y z:=z+x;end.end.现对进程语句进行编号,以方便描述。现对进程语句进行编号,以方便描述。P1:P2:begin begin y:=1;x:=1;y:=y+2;x:=x+1;V(S1
2、);P(S1);z:=y+1;x:=x+y;P(S2);V(S2);y:=z+y z:=z+x;end.end.、和和是不相交语句,可以任何是不相交语句,可以任何次序交错执行,而结果是唯一的。接着无次序交错执行,而结果是唯一的。接着无论系统如何调度进程并发执行,当执行到论系统如何调度进程并发执行,当执行到语句语句时,可以得到时,可以得到x=5,y=3。按。按Bernstein条件,语句条件,语句的执行结果不受语的执行结果不受语句句的影响,故语句的影响,故语句执行后得到执行后得到z=4。最。最后,语句后,语句和和并发执行,最后结果为:并发执行,最后结果为:语句语句先执行,再执行先执行,再执行:x
3、=5,y=7,z=9。语句语句先执行,再执行先执行,再执行:x=5,y=12,z=9。2、在、在UNIX系统中运行以下程序,最多可产系统中运行以下程序,最多可产生出多少进程生出多少进程?画出进程家属树。画出进程家属树。main()fork();/*pc(程序计数器程序计数器),进程,进程A fork();fork();解:首先采用解:首先采用fork()创建的子进程,其程序创建的子进程,其程序是复制父进程的;其次,父、子进程都从是复制父进程的;其次,父、子进程都从调用后的那条语句开始执行。调用后的那条语句开始执行。当进程当进程A执行后,派生出子进程执行后,派生出子进程B,当进程当进程A、B执行
4、后,各派生出子进程执行后,各派生出子进程C、D,当进程当进程A、B、C、D执行后,各派生出子进执行后,各派生出子进程程E、F、G、H。这时进程。这时进程A共派生出共派生出7个个子进程。子进程。ABCEDFGH3、有一个仓库,可以存放、有一个仓库,可以存放A和和B两种产品,两种产品,但要求:但要求:(1)每次只能存入一种产品()每次只能存入一种产品(A或或B););(2)NA产品数量产品数量-B产品数量产品数量M。其中,其中,N和和M是正整数。试用是正整数。试用P、V操作描述操作描述产品产品A与产品与产品B的入库过程。的入库过程。分析本题给出的第一个条件是临界资源的访问控本题给出的第一个条件是临
5、界资源的访问控制,可用一个互斥信号量解决该问题。第制,可用一个互斥信号量解决该问题。第二个条件可以分解为:二个条件可以分解为:NA产品数量产品数量B产品数量产品数量 A产品数量产品数量B产品数量产品数量M也就是说,也就是说,A产品的数量不能比产品的数量不能比B产品的数量产品的数量少少N个以上,个以上,A产品的数量不能比产品的数量不能比B产品的产品的数量多数量多M个以上。个以上。解:在本题中,可以设置两个信号量来控制解:在本题中,可以设置两个信号量来控制A、B产品的存放数量,产品的存放数量,sa表示当前允许表示当前允许A产品比产品比B产品多入库的数量,产品多入库的数量,即在当前库存量和即在当前库
6、存量和B产品不入库的情况下,产品不入库的情况下,还可以允许还可以允许sa个个A产品入库;产品入库;sb表示当前允许表示当前允许B产品比产品比A产品多入库的数量,产品多入库的数量,即在当前库存量和即在当前库存量和A产品不入库的情况下,产品不入库的情况下,还可以允许还可以允许sb个个B产品入库。产品入库。初始时,初始时,sa为为M1,sb为为N1。当往库中。当往库中存放入一个存放入一个A产品时,则允许存入产品时,则允许存入B产品的产品的数量也增加数量也增加1;当往库中存放入一个;当往库中存放入一个B产品产品时,则允许存入时,则允许存入A产品的数量也增加产品的数量也增加1。var mutex:sem
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 习题
限制150内