第3章进程并发控制作业题参考答案

第3章 进程并发控制作业题参考答案
作业题
题1 进程间的互斥与同步表示了各进程间的______。
A.竞争与协作      B. 相互独立与相互制约
C .临界区调度原则  D. 动态性与并发性
题2 若执行信号量 S操作的进程数为3,信号量S初值为2,当前值为-1,表示有____个等待相关临界资源的进程。
A  0      B  1    C  2    D  3
题3 由于并发进程执行的随机性,一个进程对另一个进程的影响是不可预测的,甚至造成结果的不正确,_________。
A.造成不正确的因素与时间有关 
B. 造成不正确的因素只与进程占用的处理机有关
C.造成不正确的因素与执行速度无关
D. 造成不正确的因素只与外界的影响有关
题4 下列机构中不能用于进程间数据通信的是____________。继电器延时电路
A.消息  B.共享存储区  C. 信号量   D.管道
题5 下面有关管程的说法,不正确的是________
A.管程是种进程同步机制  B. 管程是一种编程语言成分
C. 管程是一种系统调用   D.管程比信号量更容易保证并行编程的正确性
题6 什么是临界资源和临界区?一个进程进人临界区的调度原则是什么
题7 进程之间存在哪几种制约关系?各是什么原因引起的?下列活动分别属于哪种制约关系?
(1)图书馆借书。属于互斥关系。
(2)两队举行篮球赛。既有互斥关系,又有同步关系。
(3)流水生产线。属于同步关系。
(4)乐队演奏。属于同步关系。
(5)购买火车票。属于互斥关系。
题8 在生产者消费者问题中,如果将两个P操作即生产者程序流程中的P(buffers)和P(mutex)互换位置.结果会如何? 形成死锁。
题9 试用P、V操作描述下列理发师和顾客之间的同步问题。
某个理发师当没有顾客时,去睡觉;当有顾客来理发,若理发师正在睡觉时,这个顾客会叫醒他,理发师给该顾客理发,理发期间若还有顾客到达则等待理发师依次理发,直到没有顾客到来,理发师又去睡觉。
wakeup,wait,mutex:semaphore;
wakeup:=0;wait:=0;mutex:=1;
cobegin
顾客进程:
{
    p(mutex);
    rc=rc+1;
    if(rc==1) v(wakeup);
    else p(wait);
    v(mutex);
    理发;
}
理发师进程:
{
    P(wakeup);
    While(rc!=0)
    {
        理发;
        p(mutex);
        rc=rc-1;
        if(rc!=0)
            v(wait);
        v(mutex);
}
}
c头笼oendmppt算法
自测题
一、选择题
1.并发性是指若干事件在______发生。
A.同一时刻  B.同一时间间隔内
C.不同时刻  D.不同时间间隔内
2.进程间的基本关系为______。
A.相互独立  B.同步与互斥    C.信息传递与信息缓冲  D.并行执行与资源共享
3.操作系统中P、V操作是一种______。
A.系统调用  B.进程通信原语    C.控制命令    D.软件模块
4.两个进程合作完成一个任务 ,在并发执行中,一个进程要等待其合作伙伴发来信息或者建立某个条件后再向前执行,这种关系是进程间的______关系。
A.同步  B.互斥  C.竞争  D.合作
5.一段不能由多处进程同时执行的代码称为______-
A.临界区  B.临界资源    C.锁操作  D.信号量操作
6.临界区是指并发进程中______
A.用于实现进程互斥的程序段  B.用于实现进程同步的程序段
C.用于实现进程通信的程序段  D.与互斥的共享资源有关的程序段
7.不能利用______实现父子进程间的互斥。
A.文件  B.外部变量  C.信号量    D.锁
8.解决进程间同步与互斥问题常用的方法是使用______
A. 锁操作  B. 存储管理  C.信号机构  D.信号量
9.读者、写者是一个______问题 。
A.互斥  B. 半同步    C.全同步    D.共享
10. 如果系统只有一个临界资源.同时 有很多进程要竞争该资源,那么系统______发生死锁。
A.一定会  B一定不会  C.不一定会    D.由进程数量决定
11. 在操作系统中,对信号量的s的P操作定义中,使进程进人相应等待队列的条件是______
A. s>0  B. s=0    C. s<0    D. s≤0
陶瓷手链
12. N个进程访问一个临界资源,则设置的互斥信号量:的取值范围是______
A. 0~N- 1  B.1~-(N-1)    C.1~N-1    D. 0~-1
13.临界区就是指______
A.一段程序  B.一段数据区  C.一个缓冲区    D.一个共享资源
14.M个生产者,N个消费者共享长度为L的有界缓冲区,则对缓冲区互斥操作而设置的信号量的初值应设为______
A. L    B. M    C. N    D.1
15. 对于使用一个临界资源的两个并发进程,若互斥信号量等于1,则表示______
A.没有进程进入临界区    B.有一个进程进人了临界区
C.有一个进程进人了临界区,另一个进程等待进人
D.这两个进程都在等待进人临界区
16. 若信号量S的初值为2,当前值为-1,则表示有______个等待进程。
A.0    B.1    C.2    D.3
17.类似于系统的进程间的通信方法是______通信。
A.管道  B.共享存区  C.信号量    D.消息
18.在进程之间要传递大量的数据,效率高而且互斥与同步控制方便的方法是采用______
A.管道      B.共享存储区    C.全局变量    D.信号量
19.信箱通信是一种______通信方式。
A.低级  B.直接    C.间接  D.中级
20.下列不属于管程的组成部分。
A.对管程内数据结构进行操作的一组过程 B管程外过程调用管程内数据结构的说明
C.管程内共享变量的说明  D.共享变量初始化语句府字列
21测试并设置指令testaand-set是一种______
A.锁操作指令  B.互斥指令  C.判断指令  D.信号量指令
22关于管程与进程比较的论述中,正确的是______
A.管程内定义的是公用数据结构,进程内定义的是私有数据结构
B.管程作为操作系统或编程语言成分,与进程一样也具有生命周期,由创建而产生,由撤销而消亡
C.管程能被系统中所有的进程调用
D.管程和调用它的进程能够并行工作
23.任何进程使用管程所管理的临界资源时,需要调用特定的______才能互斥地进入管程,使用资源。
A.系统调用B.访管指令C. 管程中的有关人口过程D.同步操作原语
二、填空题
1.并发的实质是一个处理机在多个程序之间的______。
2. 通常将并发进程之间的制约关系分为两类: ______和______。
3. P、V操作原语是对______执行的操作,其值只能由P、V操作改变。
4.若一个进程已经进人临界区,其他欲进人同一临界区的进程必须______。
5.一次仅允许-一个进程访问的资源称为______。
6.进程访问临界资源的那段代码称为______。
7.在进程的同步和互斥问题中,可以用布尔变量实现______。
8在操作系统中,使用信号量可以解决进程间的______与______问题。
9.每执行一次Wait()操作,信号量的数值S减1。若______,则该进程继续执行,否则进入______状态。
10.每执行一次Signa()操作信号量的数值S加1。若______,则该进程继续执行;否则,从对应的_队列中移出一个进程,该进程的状态将为______。
11.有m个进程共享一个同类临界资源,如使用信号量解决进程间的互斥问题,那么信号量的取值范围为______
12有m个程共享n个同类临界资源,如使用信号量解决进程间的互斥问题,那么信号量的取值范围为______
13.互斥信号量S的当前值为-2表示______。
14.某一时期系进中共有6个进,每个进程要使用一个相关临界资源,互斥信号量S的初值为3,当前值为-2,则表示有______个进程正在访问相关临界资源,有______个访问相关临界资源的进程进入阻塞状态,有______个进程还没有申请访问相关临界资源。
15.信号量当前值大于零时其数值表示______
16.有m个进程共享一个临界资源,若使用信号量机制实现对临界资源的访问,则信号量的初值应设为______,其取值范围为______
17.利用信号量实现进程的______,应为临界区设置一个信号量mutex,其初值为1,表示该资源尚未使用临界区应置于______和______原语之间。
18.操作系统中信号量的值与______.的使用情况有关,它的值仅能由______来改变。殡仪馆焚化炉
19. 操作系统中的-种同步与互斥机制,由共享资源的数据及其在该数据上的一组操作组成,该机制称为______
20.一个进程要向另一个进程传送大量数据,如不考虑进程间的同步,效率最高的进程通信机制为______
21.与E-mail类似的进程间数据通信机制是______
22.在默认的情况下,大多数信号会导致接收进程______
23.实现一个管程时,必须考虑的三个主要问题是互斥______和______
24.信箱通信机制通常采用______原语和______原语。
三、问答题
1.使用开关中断方法实施临界区互斥的缺点是什么?克服该缺点的改进方法是什么?
2.说明互斥和同步对信号量操作方法的差异。
3.在两个进程间的同步,如计算进程和打印进程的经典例子中,为什么对一个缓冲区要设置两个变量,是否能只设置一个变量,例如,当为0(缓冲区没数据)时P1执行,为1(缓冲区有数据)时P2执行,可以这样实现吗?
4.为什么要在生产者和消费者的同步问题中加人互斥信号量mutex,而在计算进程和打印进程的两个进程之间的同步问题中不要加人互斥信号量mutex?

本文发布于:2024-09-21 12:38:41,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/102276.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:进程   信号量   资源
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议