Deadlocks occur when multiple processes are waiting for resources held by other processes in the set, creating a circular wait. The four conditions for deadlock are mutual exclusion, hold and wait, no preemption, and circular wait. Deadlocks can be addressed through prevention, avoidance, detection, or recovery. Prevention eliminates one of the four conditions. Detection identifies deadlocked processes and resources. Recovery options include terminating all or one deadlocked process at a time until the cycle is broken, or preempting resources from processes until the cycle is broken.