【发布时间】:2011-09-27 17:32:52
【问题描述】:
嗯,究竟是什么改变了进程的上下文。 假设我有一个算法,其中说
S=0;
begin
signal(S);
<critical>
wait(S);
end
现在在这里,当我的信号被执行时,进程会被抢占,队列中的进程会被执行吗?
【问题讨论】:
标签: operating-system semaphore
嗯,究竟是什么改变了进程的上下文。 假设我有一个算法,其中说
S=0;
begin
signal(S);
<critical>
wait(S);
end
现在在这里,当我的信号被执行时,进程会被抢占,队列中的进程会被执行吗?
【问题讨论】:
标签: operating-system semaphore
我想你想做什么
S=0;
begin
wait(S);
<critical>
signal(S);
end
首先等待某个信号(锁定,或来自其他进程的信号),然后进入临界区。一旦离开临界区,就通知其他等待进程唤醒。
【讨论】: