Correct Answer - Option 2 : Pre-emptive
Necessary Conditions for Deadlock are as follows
-
Mutual exclusion: At least one resource must be held in a non-sharable mode; that is, only one process at a time can use the resource. If another process requests that resource, the requesting process must be delayed until the resource has been released.
-
Hold and wait: A process must be holding at least one resource and waiting to acquire additional resources that are currently being held by other processes.
-
No preemption: Resources cannot be preempted; that is, a resource can be released only voluntarily by the process holding it, after that process has completed its task.
-
Circular wait: A set {P0, P1, ..., Pn} of waiting processes must exist such that P0 is waiting for a resource held by P1, P1 is waiting for a resource held by P2, ..., Pn−1 is waiting for a resource held by Pn, and Pn is waiting for a resource held by P0.
Therefore pre-emptive is not required condition for a deadlock