编程接口指南

内核优先级倒置

一个或多个优先级较低的进程长时间阻塞优先级较高的进程时,便会出现优先级倒置。在 SunOS 内核中使用同步元语(如互斥锁)可能会导致优先级倒置。

某进程必须等待一个或多个进程放弃资源时,此进程便已阻塞。长时间阻塞可能会导致错过最终期限,即使对于低级别使用率也是如此。

通过实现基本优先级继承策略,已经解决了 SunOS 内核互斥锁引起的优先级倒置问题。此策略指明优先级较低的进程阻塞优先级较高的进程的执行时,优先级较低的进程便会继承优先级较高的进程的优先级。此继承将设置进程可保持阻塞状态的时间上限。此策略是内核行为的一个属性,而不是程序员通过系统调用或接口执行制定的解决方案。但是,用户级别进程仍会呈现优先级倒置。