计算机操作系统课后习题答案(第三版) 汤小丹(11)
发布时间:2021-06-08
发布时间:2021-06-08
计算机操作系统(第三版)汤小丹 梁红兵 汤小瀛西安电子科技大学出版社
Ea.t ;
Signal(chopstick[i]);
Signal(chopstick[(i+1) mod 5])
Ea.t ;
Think;
11
Until false;
28.在测量控制系统中的数据采集仸务,把所采集的数据送一单缓冲区;计算仸务从该单
缓冲中叏出数据迚行计算.试写出利用信号量机制实现两者共享单缓冲的同步算法。
答:
a. Var mutex, empty, full: semaphore:=1, 1, 0;
gather:
begin
repeat
gather data in nextp;
wait(empty);
wait(mutex);
buffer:=nextp;
signal(mutex);
signal(full);
until false;
end
compute:
begin
repeat
wait(full);
wait(mutex);
nextc:=buffer;
signal(mutex);