priority inversion
<parallel> The state of a concurrent system where a high priority task is 
waiting for a low priority task which is waiting for a medium priority task. The 
system may become unstable and crash under these circumstances.
 
In an operating system that uses multiple tasks, each task (or context) may be 
given a priority. These priorities help the scheduler decide which task to run 
next. Consider tasks, L, M, and H, with priorities Low, Medium, and High. M is 
running and H is blocked waiting for some resource that is held by L. So long as 
any task with a priority higher than L is runable, it will prevent task L, and 
thus task H, from running.
 
Priority inversion is generally considered either as a high-level design failure 
or an implementation issue to be taken into account depending on who is talking. 
Most operating systems have methods in place to prevent or take inversion into 
account. Priority inheritance is one method.
 
The most public instance of priority inversion is the repeated 'fail-safe' 
rebooting of the Mars Pathfinder. base station ('Sagan Memorial 
Station').
 
(2003-06-04)
 
  
 
  
Nearby terms: 
							Print Services Facility « priority inheritance « 
							priority interrupt « priority inversion » 
							priority queue » priority scheduling » PRISM
 
							
					  |