This document discusses deadlocks in operating systems. A deadlock occurs when all processes are blocked from accessing resources and communicating due to resource deficiencies or conflicts. Resources can be consumable, used by only one process and then depleted; sharable, used by multiple processes simultaneously; or serially reusable, used by one process at a time but not depleted. For a deadlock to occur there must be mutual exclusion of resources, a hold and wait condition, no preemption of resources, and a circular wait chain of processes. Operating systems aim to prevent deadlocks through careful resource management and include recovery systems in case a deadlock still occurs.