In 1997, NASA’s Mars Pathfinder mission encountered a real-time operating-system failure caused by priority inversion. A low-priority task held a shared resource needed by a high-priority task, while a medium-priority task preempted the low-priority task. As a result, the highest-priority process could not run even though the system’s scheduling rules nominally favored it. The supplied source identifies this as the classic example of priority inversion in a deployed real-time system.
The blockage caused the lander’s watchdog timer to reset the system, creating repeated interruptions rather than a simple slowdown. The incident exposed how resource locking could undermine otherwise carefully designed priority assignments and potentially violate real-time response guarantees. The source does not provide a financial loss, named executive, whistleblower, or formal enforcement action; it instead places the failure in the broader history of operating-system design, where priority inversion had been recognized since the 1970s and addressed through techniques such as priority inheritance and priority ceilings.