今天sybase的笔试题,哎,竟然忘了该怎么写了,想当年做操作系统的时候可是做了一百遍啊一百遍
3个信号量
semaphore mutex=1 //互斥
semaphore empty = N //空位
semaphore ful = 0 //已有的产品数
Producer()
{
while(1)
{
produce();
p(empty) //判断是否还有空位
p(mutex)
Appand();
v(mutex);
v(full) //产品数加1
}
}
Consumer()
{
while(1)
{
p(full) ; //是否有产品
p(mutex);
take();
v(mutex);
v(empty) ; //空位加1
consume();
}
}

