Nonpreemptive strict-priority arbitration
ID: nonpreemptive-strict-priority-arbitration
At each service decision, choose the highest-priority pending request, preserving FIFO queue order within a priority class. A running owner retains the resource until it releases it; a higher-priority arrival changes the next choice rather than interrupting current work. Two priority classes can be represented by two FIFO queues, consulting the urgent one first.
This policy preserves the ownership safety argument of a message-passing mutual exclusion server. It does not by itself give starvation freedom to lower-priority requests when higher-priority traffic can continue indefinitely. Priority is evaluated on requests known to the arbiter at the decision point; a message not yet received cannot influence that decision.
New to topics? Read the docs here!