Unsafe state in a deadlock-avoidance system, Operating System

Assignment Help:

Question:

A set of processes are in a deadlock state when every process in the set is waiting for an event that can be caused by only another process in the set.

(a) There exists three different ways that an operating system can use to deal with deadlock situations. Identify the three methods, and explain how they can be used to deal with processes that are deadlocked.

(b) Assume that a system always require additional information about how resources are being requested for each process before making a decision on whether to grant the request or not to grant the request. One possible reason for not granting the request is because it can put the system in an unsafe state.

I. What is the difference between a safe state and an unsafe state in a deadlock-avoidance system?

Consider a system with 12 magnetic tape drives and 3 processes: P0, P1, P2. Process P0 requires 10 tape drives, process P1 may need as many as 4, and process P2 may need up to 9 tape drives. Suppose that at time t0, the processes are holding 5, 2 and 2 tape drives respectively, as illustrated in the table below:

5_Deadlock-avoidance system.png

II. Is the system in a safe state at time t0? Clearly explain your answer.

III. Suppose that at time t1, process P2 requests and is allocated 1 more tape drive. Now, will this allocation put the system in a safe or unsafe state? Clearly explain your answer.


Related Discussions:- Unsafe state in a deadlock-avoidance system

State the advantage of multiprocessor system, State the advantage of multip...

State the advantage of multiprocessor system? The advantages of multiprocessor system are:- a)      Enhanced throughput. b)      Economy of scale. c)       Enhanced re

Beladys anomaly algorithm, Q.  You have devised a fresh page-replacement a...

Q.  You have devised a fresh page-replacement algorithm that you think may be optimal. In a few contorted test cases Belady's anomaly occurs. Is the fresh algorithm optimal? Descr

Macro, What is macro expansion

What is macro expansion

Unix process api, Unix process API The two most important function calls...

Unix process API The two most important function calls to use when programming with several processes are fork and exec:  fork() creates a copy of current process. It gives

Is there any way to execute truly stable storage, Q. Is there any way to ex...

Q. Is there any way to execute truly stable storage? Describe your answer. Answer: Truly steady storage would never lose data. The fundamental technique for steady storage is

What is an operating system?, What is an operating system? An operating...

What is an operating system? An operating system is a program that acts as a mediator between a user and the computer hardware. The function of an operating system is to provid

How is process management done in multiprocessing systems, How is process m...

How is process management done in multiprocessing systems ? There are two accost for the process management in multiprocessor systems. Master-slave configuration Sy

Producer-consumer using condition variables, Now let us present an implemen...

Now let us present an implementation of a producer-consumer system using condition variables. This implementation works. dequeue() lock(A) while (queue empty) { wait(A, C)

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd