使用测试和设置指令来实现用于实现流程关键部分的enter_CS()和leave_CS()函数,如下所示:
void enter_CS(X)
{
while test-and-set(X) ;
}
void leave_CS(X)
{
X = 0;
}
在上述解决方案中,X是与CS关联的内存位置,并且被初始化为0。现在考虑以下语句:
I.上述解决CS问题的方法没有死锁
二。解决方案是无饥饿的。
三,进程按FIFO顺序输入CS。
IV多个进程可以同时进入CS。
上面哪个陈述是正确的?
(A)我只
(B)我和我
(C) II和III
(D)仅IV答案: (A)
说明:上面的解决方案是一个简单的测试设置解决方案,可确保不会发生死锁,但它不使用任何队列来避免饥饿或具有FIFO顺序。
这个问题的测验