Can indefinite blocking take place, Operating System

Assignment Help:

Consider the subsequent resource-allocation policy. Requests as well as releases for resources are allowed at any time. If a request for resources can't be satisfied because the resources aren't available then we check any processes that are blocked waiting for resources. If they have the desired resources after that these resources are taken away from them and are given to the requesting process. The vector of the resources for which the process is waiting is increased to include the resources that were taken away. For instance consider a system with three resource types and the vector Available initialized to (4,2,2). If process P0 asks for (2, 2, 1) it gets them. If P1 asks for (1,0,1) it gets them. After that if P0 asks for (0, 0, 1), it is blocked (resource not available). If P2 now asks for (2, 0, 0) it gets the available one (1,0,0) in addition to one that was allocated to P0 (since P0 is blocked). P0's Allocation vector goes down to (1, 2, 1) and its Need vector goes up to (1, 0, 1).

a. Can deadlock take place? If you answer "yes" give an instance and If you answer "no," specify which necessary condition cannot occur.

b. Can indefinite blocking take place? Describe your answer.

Answer:

a. Deadlock cannot take place because pre-emption exists.

b. Yes A process may never obtain all the resources it needs if they are continuously pre-empted by a series of requests such as those of process C.


Related Discussions:- Can indefinite blocking take place

Evaluate the physical address, Compare between the one and two-dimensional ...

Compare between the one and two-dimensional memory organizations in terms of the  memory structure,  advantages, and disadvantages.  Which approach would better support the needs o

Write a program to synchronize the agent, The Cigarette-Smokers difficulty ...

The Cigarette-Smokers difficulty Consider a system with three smoker processes and one agent process. Every smoker continuously rolls a cigarette and then smokes it. But to roll as

Developing code with threads, Developing Code with Threads Writing code...

Developing Code with Threads Writing code to support a thread-based implementation is very straightforward. Simple APIs are presented to the developer for each threads package.

Define the tlsfree(tlsindex) function, Define the TlsFree(TLSIndex) Functio...

Define the TlsFree(TLSIndex) Function This function should be called to free a TLSindex allocated by TlsAlloc. It would be executed when there are no more threads in a process

Describe the possible rmi invocation semantics, Question: (a) Briefly d...

Question: (a) Briefly discuss and describe the possible RMI invocation semantics. (b) (i) What is data marshaling? (ii) Explain the role of a remote object reference dur

BC0056, Write a C program that illustrates the creation of child process us...

Write a C program that illustrates the creation of child process using fork system call. One process finds sum of even series and other process finds sum of odd series.

SYSTEM PROGRAMMING, advantages and disadvantages of monolithic and layered ...

advantages and disadvantages of monolithic and layered approach

Allocation techniques, Since most of the programs require a lot of memory a...

Since most of the programs require a lot of memory allocation/deallocation, we expect the memory management to be fast, to have low fragmentation, make good use of locality, and be

Name the hardware to support demand paging, The hardware to support demand ...

The hardware to support demand paging is as follows Page table: This table has the skill to mark an entry invalid though a valid-invalid bit or particular value of protectio

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