操作系统PV操作习题.doc

操作系统PV操作习题.doc

ID:52526494

大小:238.50 KB

页数:59页

时间:2020-03-28

操作系统PV操作习题.doc_第1页
操作系统PV操作习题.doc_第2页
操作系统PV操作习题.doc_第3页
操作系统PV操作习题.doc_第4页
操作系统PV操作习题.doc_第5页
资源描述:

《操作系统PV操作习题.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、一、用P、V操作描述前趋关系。P1、P2、P3、P4、P5、P6为一组合作进程,其前趋图如图2.3所示,试用P、V操作描述这6个进程的同步。p23图2.3说明任务启动后P1先执行,当它结束后P2、P3可以开始执行,P2完成后P4、P5可以开始执行,仅当P3、P4、P5都执行完后,P6才能开始执行。为了确保这一执行顺序,设置5个同步信号量n、摄、f3、f4、g分别表示进程P1、P2、P3、P4、P5是否执行完成,其初值均为0。这6个进程的同步描述如下:             图2.3描述进程执行先后次序的前趋图intf1=0;/*表示进程P1是否执行完成*/intf

2、2=0;/*表示进程P2是否执行完成*/intf3=0;/*表示进程P3是否执行完成*/intf4=0;/*表示进程P4是否执行完成*/intf5=0;/*表示进程P5是否执行完成*/main(){cobeginP1();P2();P3();P4();P5();P6();coend}P1(){┇v(f1);v(f1):}P2(){p(f1);┇v(f2);v(f2);)P3(){p(f1);┇v(f3);}P4(){p(f2);┇v(f4);}P5(){p(f2);┇v(f5);}P6(){p(f3);p(f4);p(f5);┇}二、生产者-消费者问题p25生产者-

3、消费者问题是最著名的进程同步问题。它描述了一组生产者向一组消费者提供产品,它们共享一个有界缓冲区,生产者向其中投放产品,消费者从中取得产品。生产者-消费者问题是许多相互合作进程的一种抽象。例如,在输入时,输入进程是生产者,计算进程是消费者;在输出时,计算进程是生产者,打印进程是消费者。因此,该问题具有很大实用价值。我们把一个长度为n的有界缓冲区(n>0)与一群生产者进程P1、P2、…、Pm和一群消费者进程C1、C2、…、Ck联系起来,如图2.4所示。假定这些生产者和消费者是互相等效的。只要缓冲区未满,生产者就可以把产品送入缓冲区,类似地,只要缓冲区未空,消费者便可以

4、从缓冲区中取走物品并消耗它。生产者和消费者的同步关系将禁止生产者向满的缓冲区输送产品,也禁止消费者从空的缓冲区中提取物品。       图2.4生产者-消费者问题为解决这一类生产者-消费者问题,应该设置两个同步信号量,一个说明空缓冲单元的数目,用empty表示,其初值为有界缓冲区的大小n,另一个说明满缓冲单元的数目,用full表示,其初值为0。在本例中有P1、P2、…、Pm个生产者和C1、C2、…、Ck个消费者,它们在执行生产活动和消费活动中要对有界缓冲区进行操作。由于有界缓冲区是一个临界资源,必须互斥使用,所以,另外还需设置一个互斥信号量mutex,其初值为1。生

5、产者-消费者问题的同步描述如下:intfull=O;/*满缓冲单元的数目*/intempty=n;/*空缓冲单元的数目*/intmutex=1;/*对有界缓冲区进行操作的互斥信号量*/main(){cobeginproduceri();/*i=1,2,┅,m;j=l,2,┅,k*/consumerj();coend}produceri()/*i=1,2,┅,m*/{while(生产未完成){┇生产一个产品;p(empty);p(mutex);送一个产品到有界缓冲区;v(mutex);v(full);)}consumerj()/*j=1,2,…,k*/{while(还

6、要继续消费){p(full);p(mutex);从有界缓冲区中取产品;v(mutex);v(empty);┇消费一个产品;}}三、在操作系统中,进程是一个具有一定独立功能的程序在某个数据集上的一次__________。A.等待活动B.运行活动C.单独操作D.关联操作答:B四、多道程序环境下,操作系统分配资源以_______为基本单位。A.程序B.指令C进程D.作业答:C五、对于两个并发进程,设互斥信号量为mutex,若mutex=O,则_____。A.表示没有进程进入临界区B.表示有一个进程进入临界区C.表示有一个进程进入临界区,另一个进程等待进入D.表示有两个进程

7、进入临界区答:B六、两个进程合作完成一个任务。在并发执行中,一个进程要等待其合作伙伴发来消息,或者建立某个条件后再向前执行,这种制约性合作关系被称为进程的____。A.同步B.互斥C.调度D.执行答:A七、为了进行进程协调,进程之间应当具有一定的联系,这种联系通常采用进程间交换数据的方式进行,这种方式称为______。A.进程互斥B.进程同步C进程制约D.进程通信答:D八、在测量控制系统中,数据采集任务把所采集的数据送入一单缓冲区;计算任务从该单缓冲区中取出数据进行计算。试写出利用信号量机制实现两者共享单缓冲区的同步算法。P33[分析及相关知识]在本题中采集任务

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。