关于临界区问题(critical section problem)是一个算法(假设只有进程P0和P1可能进入该临界区),算法如下(i为0或1),该算法( )。 repeat retry:if(turn≠-1)turn:=i;

admin2019-08-10  43

问题 关于临界区问题(critical section problem)是一个算法(假设只有进程P0和P1可能进入该临界区),算法如下(i为0或1),该算法(    )。
    repeat
    retry:if(turn≠-1)turn:=i;
    if(turn≠i)go to retry;
    tum:=-1:
    critical section(临界区)
    tum=0:
    remainder section(其他区域)
    until false:

选项 A、不能保证进程互斥进入临界区,且会出现“饥饿”
B、不能保证进程互斥进入临界区,但不会出现“饥饿”
C、保证进程能互斥进入临界区,但会出现“饥饿”
D、保证进程互斥进入临界区,不会出现“饥饿”

答案A

解析 例如当P0执行完语句turn:=-1,刚好要进入临界区时,CPu又调度P1执行,P1能够顺利进入临界区,不能满足互斥。当P0执行完临界区时,CPU调度P2执行,P2在retry循环,CPU调度P0执行,P0继续执行,重复以上过程,会导致P2饥饿。
转载请注明原文地址:https://kaotiyun.com/show/f5Ci777K
0

相关试题推荐
最新回复(0)