计算机操作系统(十四):进程互斥同步问题
来源王道考研系列视频:计算机操作系统
https://www.bilibili.com/video/BV1YE411D7nH
生产者问题
生产者、消费者共享一个初始为空、大小为n的缓冲区。
只有缓冲区没有满时,生产者才能把产品放入到缓冲区,否则必须等待。
只有缓冲区不空时,消费者才能从中取出产品,否则必须等待。
缓冲区是临界资源,各进程必须互斥访问。
实现互斥的p操作,一定要放在同步的p操作之后!
V操作不会导致进程阻塞,因此两个V操作的顺序可以交换。
多生产者-多消费者问题
如果缓冲区大小为1,那么有可能不需要设置互斥信号量就可以实现互斥访问缓冲区的功能。