Question: Consider the following ways of handling deadlock: (1) Bankers algorithm, (2) Detect deadlock and kill thread, releasing all resources, (3) Reserve all resources in advance,
Consider the following ways of handling deadlock:
(1) Banker’s algorithm,
(2) Detect deadlock and kill thread, releasing all resources,
(3) Reserve all resources in advance,
(4) Restart thread and release all resources if thread needs to wait,
(5) Resource ordering, and
(6) Detect deadlock and roll back thread’s actions.
a. One criterion to use in evaluating different approaches to deadlock is which approach permits the greatest concurrency. In other words, which approach allows the most threads to make progress without waiting when there is no deadlock? Give a rank order from 1 to 6 for each of the ways of handling deadlock just listed, where 1 allows the greatest degree of concurrency. Comment on your ordering.
b. Another criterion is efficiency; in other words, which requires the least processor overhead. Rank order the approaches from 1 to 6, with 1 being the most efficient, assuming that deadlock is a very rare event. Comment on your ordering. Does your ordering change if deadlocks occur frequently?
Step by Step Solution
3.37 Rating (163 Votes )
There are 3 Steps involved in it
a In order from mostconcurrent to least there is a rough partial order on the deadlockhandling algorithms Detect deadlock and kill thread releasing its resources detect deadlock and roll back threads ... View full answer
Get step-by-step solutions from verified subject matter experts
Document Format (1 attachment)
451-C-S-D-B-O-S (103).docx
120 KBs Word File
