题11

题目

进程 A 和进程 B 通过共享缓冲区协作完成数据处理, 进程 A 负责产生数据并放入缓冲区,进程 B 从缓冲区读数据并输出。
进程 A 和进程 B 之间的制约关系是 ( )。
A. 互斥关系
B. 同步关系
C. 互斥和同步关系
D. 无制约关系

分析

肯定有同步关系,因为这有先后关系
又犹豫都涉及对共享缓存区的操作,而共享缓冲区显然是互斥资源,如果不做好管理,冲突了,肯定数据就混乱了

并发进程因为共享资源而产生相互之间的制约关系, 可以分为两类:
①互斥关系, 指进程之间因相互竞争使用独占型资源 (互斥资源) 所产生的制约关系;
②同步关系, 指进程之间为协同工作需要交换信息、相互等待而产生的制约关系。
本题中两个进程之间的制约关系是同步关系, 进程 必须在进程 将数据放入缓冲区后才能从缓冲区中读出数据。
此外,共享的缓冲区一定是互斥访问的, 所以它们也具有互斥关系。