优先上限协议
Priority Ceiling Protocol是实时系统中的作业任务同步协议,在很多方面都优于优先级继承协议。实时系统是多任务系统,涉及使用信号量变量、信号和事件进行作业同步。
在优先级上限协议中,假设系统中的所有作业都具有固定的优先级。它不会陷入死锁状态。
优先级继承协议的链式阻塞问题在优先级上限协议中得到解决。
优先级上限协议的基本属性是:
- 系统中的每个资源都被分配了一个优先级上限。
- 分配的优先级上限由可能获取资源的所有作业中的最高优先级确定。
- 它利用了多个资源或信号量变量,从而消除了链阻塞。
- 如果没有其他作业获得对该资源的锁定,则为该作业分配对该资源的锁定。
- 只有当作业的优先级严格大于其他作业持有的所有锁的优先级上限时,作业 J 才能获取锁。
- 如果高优先级作业已被资源阻塞,则持有该资源的作业将获得高优先级任务的优先级。
- 一旦资源被释放,优先级将重置回原来的。
- 在最坏的情况下,当 J 1必须访问 T 个信号量以完成其执行时,最高优先级的作业 J 1可能被系统中的 T 个较低优先级的任务阻塞。
与优先级继承协议不同,优先级调度协议可用于解决优先级倒置问题。它利用信号量与实时系统中的作业共享资源。