Protocol de plafon prioritar
Acest articol sau secțiune referitoare la informatică este considerat a fi verificat . |
Această intrare sau secțiune despre bazele de date subiect nu menționează sursele necesare sau cei prezenți sunt insuficienți . |
Protocolul de plafon prioritar este un protocol care este utilizat într- un sistem în timp real pentru gestionarea accesului la resursele partajate, evitând inversarea prioritară și excluderea reciprocă .
Atunci când două sau mai multe sarcini (sau fire) trebuie să acceseze aceleași resurse, apare problema cu privire la cine ar trebui să le acceseze mai întâi și cum este posibil să se semnaleze tuturor actorilor, modificarea unei anumite resurse partajate de către un actor. Accesul la secțiunea critică poate fi gestionat eficient prin abordarea plafonului prioritar care constă în:
Pentru fiecare resursă ( mutex ) "Sk" se definește un plafon "c (Sk)" definit ca cea mai mare prioritate "p (τi)" a sarcinilor "τi" care ar putea utiliza mutexul "Sk":
c (Sk) = max {p (τi): τi folosește Sk}
Este definit plafonul maxim „c (S *)” dintre resursele ocupate în prezent
c (S *) = max {c (Sk): Sk ocupat}
Condiția de intrare pentru sarcina τj din secțiunea Sk este:
p (τj)> c (S *) (nb strict mai mare)
Proprietăți într-un mediu monoprocesor
Protocolul de plafon prioritar (spre deosebire de Moștenirea prioritară ) previne blocarea în cazul în care toate resursele partajate sunt accesate în regimul de plafon prioritar și prioritățile lor sunt alocate în mod constant, un proces suferă cel mult o întârziere (blocare) de la inversarea priorității ireductibile și numai la eliberarea acestuia.