* Bounded priority inversion
* Unbounded priority inversion
How to solve
* Priority inheritance protocol
Raised the low priority task which locked shared resource to high priority to finish task and release shared resource soon.
* Priority ceiling protocol
** OCPP: Original Ceiling Priority Protocol
Raised the task (locked resource) priority to high priority when another task tries to acquire shared resource.
** ICPP: Immediate Ceiling Priority Protocol
Raised the task priority to high priority when it acquires resource.
Reference:
http://en.wikipedia.org/wiki/Priority_inheritance
http://en.wikipedia.org/wiki/Priority_ceiling_protocol
http://blog.linux.org.tw/~jserv/archives/001299.html
http://oss.org.cn/ossdocs/rt_embed/rt/priority.html
http://wen00072-blog.logdown.com/posts/183461-note-priority-inversion-on-mars
http://www.embedded.com/design/configurable-systems/4024970/How-to-use-priority-inheritance
No comments:
Post a Comment