试题题干
简述循环缓冲中,需要保持生产者和消费者进程同步机制的两种情况。
参考答案
试题解析
在下列两种情况下需要保持两种进程同步的机制。
(1)Nexti指针追上Nextg指针,即生产者进程速度大于消费者进程速度,没有空缓冲区,全部缓冲区已满。此时,需要阻塞生产者进程,等待消费者进程为生产者进程释放空缓冲区R。
(2)Nextg指针追上Nexti指针,即消费者进程速度大于生产者进程速度,全部缓冲区已空。此时,需要阻塞消费者进程,等待生产者进程为消费者进程释放装有数据的缓冲区G。
简述循环缓冲中,需要保持生产者和消费者进程同步机制的两种情况。
在下列两种情况下需要保持两种进程同步的机制。
(1)Nexti指针追上Nextg指针,即生产者进程速度大于消费者进程速度,没有空缓冲区,全部缓冲区已满。此时,需要阻塞生产者进程,等待消费者进程为生产者进程释放空缓冲区R。
(2)Nextg指针追上Nexti指针,即消费者进程速度大于生产者进程速度,全部缓冲区已空。此时,需要阻塞消费者进程,等待生产者进程为消费者进程释放装有数据的缓冲区G。