1. 优先继承协议(PIP):
优先级继承协议(PIP)是一种关键资源共享协议,用于在不同任务之间共享关键资源。这允许在不同的资源之间共享关键资源,而不会发生无限的优先级反转。当一个任务进行优先级反转时,具有关键资源的低优先级任务的优先级通过优先级继承机制提高。它允许该任务尽可能早地使用关键资源,而无需经过抢占。它避免了无限的优先级反转。
2. 优先上限协议(PCP):
优先级上限协议 (PCP) 是优先级继承协议 (PIP) 和最高储物柜协议 (HLP) 的扩展。它解决了Priority Inheritance Protocol的无限优先级倒置、Highest Locker Protocol的死锁和链阻塞问题,同时也最大限度地减少了继承相关的倒置,这也是Highest Locker协议的一个局限。这不是像优先继承协议那样的贪婪方法。在 PCP 中,尽管资源是免费的,但任务可能会被拒绝访问。
PIP 和 PCP 的区别:
优先级继承协议 | 优先级上限协议 |
---|---|
PIP是一种关键资源共享协议,用于在不同任务之间共享关键资源。 | PCP是一种关键资源共享协议,是 PIP 和 HLP 的扩展。 |
PIP克服了传统资源共享技术的局限性。 | PCP克服了 PIP 和 HLP 的限制。 |
PIP需要操作系统的最低支持。 | PCP需要操作系统的最大支持。 |
PIP不能防止死锁。 | PCP可以防止任务陷入僵局。 |
使用 PIP 的任务可能会遭受链阻塞。 | 使用 PCP 的任务不会遭受链阻塞。 |
PIP是所有资源共享协议中最简单的协议。 | PCP是最复杂和最有效的一种。 |
PIP不能最小化与继承相关的反转。 | PCP能够最小化与继承相关的反转。 |
PIP解决了无限优先级反转的问题。 | PCP解决了无限优先级反转、死锁和链阻塞的问题。 |
在 PIP 中,如果资源空闲,则不能拒绝最高优先级任务的访问。 | 在 PCP 中,如果优先级值小于 CSC(当前系统上限),则可以拒绝最高优先级任务的访问,尽管资源是空闲的。 |
PIP主要用于小型应用程序。 | PCP用于大型应用程序。 |
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/276089.html