华文慕课北大操作系统陈向群第六章课后习题解析
- 1、(5分)
下列关于管程的描述中,哪一个是不正确的?
A、
管程中需要提供互斥量以保证管程的互斥性
B、
管程有自己的名字
C、
管程的主要作用是管理共享资源(数据结构)
D、
进程只能调用管程提供的过程对管程中的数据结构进行处理
答案:A
管程的互斥性由编译器实现,无需使用互斥量保证互斥性
- 2、(5分)
下列哪一个操作不会唤醒或通知等在条件变量上的进程?
A、
broadcast()
B、
notify()
C、
signal()
D、
wait()
答案:D
- 3、(5分)
应用消息缓冲机制完成进程间通信的过程中,下列哪一项不是所必需的?
A、
同步互斥信号量
B、
消息缓冲区
C、
send/receive原语
D、
消息队列(指针)
答案:A
- 4、(5分)
采用共享内存进行进程间通信的方法需要程序员解决的问题是
A、
设计共享内存空间的访问原语
B、
处理进程在使用共享内存过程中的互斥关系
C、
分配共享内存空间的大小
D、
保证共享内存空间不被破坏
答案:B
共享内存的读写涉及到了读者写者问题,需要处理互斥关系
答案:正确,这也是MESA管程的缺点之一
答案:正确,HOARE管程是先进入的进程先执行,MESA是后进入的不被抢占,继续执行