Priority Inversion

From Suhrid.net Wiki
Revision as of 16:52, 6 January 2012 by Suhridk (talk | contribs) (Created page with "= Intro = * All synchronization mechanisms that are based on mutual exclusion suffer from priority inversion. * This is where a low-priority SO enters into a mutual-exclusion zo...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Intro

  • All synchronization mechanisms that are based on mutual exclusion suffer from priority inversion.
  • This is where a low-priority SO enters into a mutual-exclusion zone which it shares with a high-priority SO.
  • Now the low priority SO is in a mutex zone. Now, consider a medium priority thread which doesnt use the mutex zone, it preempts the low priority thread and starts performing a computationally intensive task.
  • So the low priority SO cant run and get out of the mutex zone. Which means, the high priority thread is blocked.
  • The medium-priority thread thereby indirectly blocks the progression of the high-priority thread for a potentially unbounded period of time.