The correct
answer is C. deadlock avoidance.Dijkstra’s banker’s algorithm is a resource allocation algorithm that prevents deadlocks from occurring. It does this by keeping track of the resources that are available and the resources that are currently being used by each process. The algorithm then ensures that no process is ever granted a resource that would prevent another process from acquiring the resources it needs to complete.
Mutual exclusion is a problem that occurs when multiple processes need to access a shared resource, but only one process can access the resource at a time. This can lead to a situation where two processes are waiting for each other to release the resource, which can cause a deadlock.
Deadlock recovery is the process of resolving a deadlock once it has occurred. This can be done by killing one of the processes involved in the deadlock, or by rearranging the order in which the processes access the resources.
Cache coherence is a problem that occurs when multiple processors are accessing the same data. This can lead to a situation where each processor has a different version of the data, which can cause problems. Cache coherence algorithms are used to ensure that all processors have the same version of the data.
None of the above options are problems that are solved by Dijkstra’s banker’s algorithm.