4.有n+1个进程A1, A2, ...An和B:
(1) A1,...An通过同一个缓冲区各自不断地向B发送消息, B不断地取消息,它必须取走发来的每一个消息.刚开始时缓冲区为空.试用P、V操作正确实现之.
(2)若缓冲区个数增至m个,试用P、V操作实现正确的通讯. 5.请给出V操作的定义.
6.用P、V操作实现PA, PB两个进程的同步问题如下所示: 其中,信号S1, S2的初值均为 1.\试问该解法正确吗?请说明理由.
7.把学生和监考老师都看作进程,学生有N人,教师1人.考场门口每次只能进出一个人,进考场原则是先来先进.当N个学生都进入考场后,教师才能发卷子.学生交卷后可以离开考场.教师要等收上来全部卷子并封装卷子后才能离开考场.
(1)问共需设置几个进程?
(2)试用P、V操作解决上述问题中的同步和互斥关系.
8.某商店有两种食品A和B,最大数量各为m个.该商店将A,B两种食品搭配出售,每次各取一个.为避免食品变质,遵循先到食品先出售的原则,有两个食品公司分别不断地供应A,B两种食品(每次一个).为保证正常销售,当某种食品的数量比另一种的数量超过k(k 11 (1)问共需设置几个进程? (2)试用P,V操作解决上述问题中的同步和互斥关系. 9.两个进程P A、P B通过两个FIFO(先进先出)缓冲区队列连接(如图).P 25 / 26 A从Q 2取消息,处理后往Q 1发消息,P B从Q 1取消息,处理后往Q 2发消息,每个缓冲区长度等于传送消息长度.Q 1队列长度为n,Q 2队列长度为m.假设开始时Q 1中装满了消息,试用P、V操作解决上述进程间通讯问题. 12 26 / 26

