Puzzle on Priority Ceiling Protocol

Joel Sherrill joel.sherrill at OARcorp.com
Wed Sep 13 13:35:43 UTC 2000


CARERI/SED wrote:
> 
> I am confused with the Priority Ceiling Protocol implemented in the rtems.
> 
> I learn that the protocol defined as "The priority ceiling of a semaphore is defined as the priority of the highest priority task that may lock this semaphore. A task T is allowed to enter a critical section only if its assigned priority is higher than the priority ceilings of all semaphores currently locked by tasks other than T."
> But RTEMS doesn't seem to conform to it when I leafed through the code in coremutex.c.

The explanation is intended to be the implementation and public
behavior.
A PCP mutex has a priority ceiling associated with it. No task that is
"more important" that the ceiling can obtain the PCP mutex.

When the task successfully obtain the mutex it's priority is changed to
be
equal to the ceiling.  Looking at both the current code and the release
branch (they are different), it looks correct.

What part of the code do you have trouble with?  
 

> I am not sure what principle RTEMS uses as to Priority Ceiling Protocol.
> Would you mind explaining it or pointing out where I can get help ?
> Thanks a lot in advance.

-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel at OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
   Support Available             (256) 722-9985



More information about the users mailing list