18.8. Deadlock avoidance

It may be feasible for a process to specify its total object requirements before it runs. This information could be used by the allocation subsystem. Let us assume that a third matrix is now available, Cm,n, giving the maximum object requirements of each process as shown in Figure 18.10.

Figure 18.10. Data structures for deadlock avoidance.

For any given request for objects that it is possible to satisfy from the objects available, the allocator can test whether

if this allocation is made (construct A', a hypothetical allocation matrix for testing) and all the processes then request their maximum number of objects (construct ...

Get Operating Systems: Concurrent and Distributed Software Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.