Deadlock Detection and Recovery
It's a method of permitting the system to enter a deadlock state, detect it and then recover.
Deadlock detection :
- Is the process of in fact determining that a deadlock exists and identifying the processes and resources involved in the deadlock.
- The fundamental idea is to check allocation against resource availability for all possible allocation sequences to determine if the system is in deadlocked state.
- As well a Wait-For-Graph (WFG) may be used if there is only a single instance of each resource. In the WFG the nodes denotes processes and the edges denotes the blockages or dependencies. Therefore if process A is waiting for a resource deem by process B there is an edge in the WFG from the node for process A to the node for process B.A cycle in the graph point to a deadlock.
Deadlock recovery:
Formerly a deadlock is detected, there wants to be a way to recover several alternatives exists:
- Temporarily protect resources from deadlocked processes.
- Back off a process to some check point permitting preemption of a needed resource and restarting the process at the checkpoint later.
- Successively termination processes until the system is deadlock free.