Possible Approaches
Deadlock Prevention: ensure that at least 1 of the necessary conditions cannot exist.
- Mutual exclusion: make resources shareable (isn’t really possible for some resources)
- hold and wait: guarantee that a process cannot hold a resource when it requests another, or, make processes request all needed resources at once, or, make it release all resources before requesting a new set
- circular wait: impose an ordering (numbering) on the resources and request them in order