There are four necessary conditions for a deadlock to occur
- Mutual exclusion condition: a resource that cannot be used by more than one process at a time.
- Hold and wait condition: processes already holding resources may request new resources.
- No preemption condition: only a process holding a resource may release it.
Circular wait condition: two or more processes form a circular chain where each process waits for a resource that the next process in the chain hold |