microZEUS
The whole stack, hand-drawn.

◄ Wiki / OS

deadlock

Two tasks each frozen forever, each waiting for a resource the other is holding.

A deadlock happens when parties hold locks and simultaneously wait on each other, so none can proceed and the system hangs. It is a classic hazard of concurrent programming. A particularly nasty case is a lock taken in a fault-handling path, which could deadlock the very fault it was supposed to help recover from.

See also

  • faultA CPU exception raised when a program does something illegal, like touching memory it shouldn't.

Referenced by

double free · fault