What is the difference among deadlock avoidance, detection
and prevention?

Answer Posted / s_rock

Prevention:
• The goal is to ensure that at least one of the
necessary conditions for deadlock can never hold.

• Deadlock prevention is often impossible to
implement.
• The system doesnot require additional apriori
information regarding the overall potential use of each
resource for each process.
• In order for the system to prevent the deadlock
condition it does not need to know all the details of all
resources in existence, available and requested.
• Deadlock prevention techniques include non-blocking
synchronization algorithms, serializing tokens, Dijkstras
algorithm etc.
• Resource allocation strategy for deadlock
prevention is conservative, it under commits the resources.
• All resources are requested at once.
• In some cases preempts more than often necessary.
Avoidance:
• The goal for deadlock avoidance is to the system
must not enter an unsafe state.
• Deadlock avoidance is often impossible to
implement.
• The system requires additional apriori information
regarding the overall potential use of each resource for
each process.
• In order for the system to be able to figure out
whether the next state will be safe or unsafe, it must know
in advance at any time the number and type of all resources
in existence, available, and requested.
• Deadlock avoidance techniques include Banker’s
algorithm, Wait/Die, Wound/Wait etc.
• Resource allocation strategy for deadlock avoidance
selects midway between that of detection and prevention.
• Needs to be manipulated until atleast one safe path
is found.
• There is no preemption.
Detection:
• The goal is to detect the deadlock after it occurs
or before it occurs.
• Detecting the possibility of a deadlock before it
occurs is much more difficult and is, in fact, generally
undecidable. However, in specific environments, using
specific means of locking resources, deadlock detection may
be decidable.
• The system doesnot requires additional apriori
information regarding the overall potential use of each
resource for each process in all cases.
• In order for the system to detect the deadlock
condition it does not need to know all the details of all
resources in existence, available and requested.
• A deadlock detection technique includes, but is not
limited to, Model checking. This approach constructs a
Finite State-model on which it performs a progress analysis
and finds all possible terminal sets in the model.
• Resource allocation strategy for deadlock detection
is very liberal. Resources are granted as requested.
• Needs to be invoked periodically to test for
deadlock.
• Preemption is seen.

Is This Answer Correct ?    10 Yes 2 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What are the reasons for implementing process migration?

682


If you tries to mount a share ( home directory )in a client machine, and it fails how do u approach?

1879


Explain the difference among deadlock avoidance, detection and prevention?

581


What is direct mount and indirect monut?

2018


Explain the difference between ntfs & fat file systems?

544






Explain the difference between fat & ntfs?

538


what is a property sheet?

1953


If you do not have cd drive then how will u format c drive?

510


What is LOM and how do you access it?

1947


Tell me what are the hardware problem you face regularly in your organization?

502


Tell me why register are stored the only binary data?

532


Explain about busy waiting?

565


Explain about dynamic memory allocation algorithm?

515


directories can be implemented either special files that can only be accused in limited ways or can be implemented as ordinary data files. what are advantages and disadvantages of this approach?

1873


when affected the system from virus , which paths will be it stored in system ?

1858