题目:设有无穷多个信息,输入进程把信息逐个写入缓冲区,输出进程逐个从缓冲区中取出信息。设缓冲区是环形的,编号为0~n-1,in和out分别是输入进程和输出进程使用的指针,初值都是0。 n 为使两类进程实行同步操作,设置了3个信号量:两个计数信号量full和empty,一个互斥信号量mutex。 full:表示放有信息的缓冲区数,其初值为( 0 )。 empty:表示可供使用的缓冲区数,其初值为( n )。 mutex:表示互斥信号量,初值为( 1 )。 n 填写相应的P、V操作。 输入进程Input: while (TRUE) { ; ; 信息送往buffer(in); in=(in+1)mod N; /*以N为模*/ ; ; } 输出进程Output: while (TRUE){ ; ; 从buffer(out)中取出信息; out=(out+1)mod N; /*以N为模*/ ; ; }
答案:评论后可见此内容