第6章 课后答案【khdaw_lxywyl】

第6章 课后答案【khdaw_lxywyl】

ID:37665983

大小:410.76 KB

页数:11页

时间:2019-05-28

第6章 课后答案【khdaw_lxywyl】_第1页
第6章 课后答案【khdaw_lxywyl】_第2页
第6章 课后答案【khdaw_lxywyl】_第3页
第6章 课后答案【khdaw_lxywyl】_第4页
第6章 课后答案【khdaw_lxywyl】_第5页
资源描述:

《第6章 课后答案【khdaw_lxywyl】》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第6章习题解答一、填空1.信号量的物理意义是当信号量值大于零时表示可分配资源的个数;当信号量值小于零时,其绝对值为等待使用该资源的进程的个数。2.所谓临界区是指进程程序中需要互斥执行的程序段。3.用P、V操作管理临界区时,一个进程在进入临界区前应对信号量执行P操作,退出临界区时应对信号量执行V操作。4.有m个进程共享一个临界资源。若使用信号量机制实现对临界资源的互斥访问,则该信号量取值最大为1,最小为−(m−1)。注意,无论有多少个进程,只要它们需要互斥访问同一个临界资源,那么管理该临界资源的信号量初值就是1。当有一个

2、进程进入临界区时,信号量的值就变为0。随后再想进入的进程只能等待。最多的情况是让一个进程进入后,其余(m−1)个进程都在等待进入。于是这时信号量取到最小值:−(m−1)。5.对信号量S的P操作原语中,使进程进入相应信号量队列等待的条件是Vs<0。6.死锁是指系统中多个进程无休止地等待永远不会发生的事件出现。7.产生死锁的4个必要条件是互斥、非剥夺、部分分配和循环等待。8.在银行家算法中,如果一个进程对资源提出的请求将会导致系统从安全的状态进入到不安全的状态时,就暂时拒绝这一请求。9.信箱在逻辑上被分为信箱头和信箱体两部

3、分。10.在操作系统中进程间的通信可以分为低级通信与高级通信两种。二、选择1.P、V操作是A。A.两条低级进程通信原语B.两条高级进程通信原语C.两条系统调用命令D.两条特权指令2.进程的并发执行是指若干个进程B。A.共享系统资源B.在执行的时间上是重叠的C.顺序执行D.相互制约3.若信号量S初值为2,当前值为−1,则表示有B个进程在与S相关的队列上等待。A.0B.1C.2D.34.用P、V操作管理相关进程的临界区时,信号量的初值应定义为C。A.−1B.0C.1D.随意5.用V操作唤醒一个等待进程时,被唤醒进程的状态变

4、为B。A.等待B.就绪C.运行D.完成6.若两个并发进程相关临界区的互斥信号量MUTEX现在取值为0,则正确的描述应该是B。A.没有进程进入临界区B.有一个进程进入临界区C.有一个进程进入临界区,另一个在等待进入临界区D.不定7.在系统中采用按序分配资源的策略,将破坏产生死锁的D条件。A.互斥B.占有并等待C.不可抢夺D.循环等待8.某系统中有3个并发进程,都需要4个同类资源。试问该系统不会产生死锁的最少资源总数应该是B。A.9B.10C.11D.129.银行家算法是一种A算法。A.死锁避免B.死锁防止C.死锁检测D.

5、死锁解除10.信箱通信是进程间的一种B通信方式。A.直接B.间接C.低级D.信号量三、问答1.试说出图6-1(即教材中第2章的图2-2)所给出的监视程序A和计数程序B之间体现出一种什么关系,是“互斥”还是“同步”?为什么?程序A:程序B:while(1)while(1){{A1:收到监视器的信号;B1:延迟半小时;A2:COUNT=COUNT+1;B2:打印COUNT的值;}B3:COUNT=0;}图6-1对两个程序的描述答:图6-1(即教材中第2章的图2-2)所给出的监视程序A和计数程序B之间体现出的是一种互斥关系,

6、因为在监视程序A里,要对共享变量COUNT进行操作:COUNT=COUNT+1;在计数程序B里要对共享变量COUNT进行操作:打印COUNT的值;COUNT=0;这两段程序是不能交叉进行的,不然就会出现与时间有关的错误。2.模仿教材中的图6-4,画出COPY和PUT之间的直接依赖关系。然后把两个图汇集在一起,体会它们三者之间正确的同步关系。再模仿教材中的图6-8,能用信号量及P、V操作来正确处理GET、COPY和PUT三者之间的协同工作关系吗?答:图6-2给出了GET、COPY和PUT三者间正确的同步关系:GET在向C

7、OPY发“可以拷贝”的消息后,要等待COPY发来“拷贝结束”的消息。因为这个消息意味着输入缓冲区R已经被COPY腾空,GET可以再次向里面存放从文件F里取出的记录了;COPY在等到GET发来的“可以拷贝”的消息后,才能够把输入缓冲区R里的记录拷贝到输出缓冲区T中。完成这个动作后,表示输入缓冲区R已经被COPY腾空,因此应该立即向GET发消息,告诉它输入缓冲区R又可以使用了。随后,向PUT发送“可以打印”的消息,等待PUT发来“打印结束”的消息;PUT在等到COPY发来“可以打印”的消息后,才能够从输出缓冲区T里取出记录

8、打印。打印完毕后,向COPY发送“打印完毕”的消息。这个消息意味着输出缓冲区T已经被PUT腾空,COPY又可以再次去等待GET发送的“可以拷贝”的消息,从输入缓冲区R里取出记录存入输出缓冲区T了。GETCOPY1.1.从文件F取出一个记等待GET发送“可以录送至输入缓冲区R拷贝”的消息2.2.PUT向COPY发送“可以将缓冲区R里

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

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

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