Architecture
Deadlock
A system state where circular dependencies prevent any progress, with each component waiting for resources held by others.
Detailed Explanation
Deadlock occurs when four conditions hold simultaneously: mutual exclusion (resources can't be shared), hold and wait (processes hold resources while waiting for others), no preemption (resources can't be forcibly taken), and circular wait (a cycle of waiting processes).
In hardware, deadlock can occur in interconnects where buffers fill, creating circular dependencies. Prevention techniques include breaking the circular wait (ordered resource acquisition), using timeouts, or ensuring sufficient buffering.
