CCS21203/DSE20203: PO 1 Apply the principles and theories related to information technology and application in the Operating System environment.

PROGRAM OUTCOME(S):

PO 1 Apply the principles and theories related to information technology and application in the Operating System environment.

COURSE OUTCOME(S):

CO1 Describe the purpose and functions of Operating Systems
CO2 Compare the concept of a thread, multi-threading models, and libraries
CO5 elaborates on the concepts of CPU scheduling, scheduling criteria, scheduling algorithms, deadlocks, and methods of handling deadlocks.

QUESTION:

Deadlock is a situation that occurs in OS when any process enters a waiting state because another waiting process is holding the demanded resource. Deadlock is a common problem in multi-processing where several processes share a specific type of mutually exclusive resource known as a soft lock or software.

a) Choose only ONE of the following cases and explain in detail how deadlock occurs in the selected case.
Case 5 : Deadlocks in Spooling
Case 1 : Deadlocks on File Requests
Case 2 : Deadlocks in Databases
Case 3: Deadlocks in Dedicated Device Allocation
Case 4 : Deadlocks in Multiple Device Allocation
Case 5 : Deadlocks in Spooling
Case 6 : Deadlocks in Disk Sharing
Case 7: Deadlocks in a Network

b) The banker’s algorithm is a resource allocation and deadlock avoidance algorithm that tests for safety by simulating the allocation for predetermined maximum possible amounts of all resources, then makes an “s-state” check to test for possible activities, before deciding whether allocation should be allowed to continue.

1. Consider the following snapshot of a system in which four resources A, B, C and D area available. The system contains a total of 6 instances of A, 4 of resource B, 4 of resource C, 2 resource D.

According to above scenario, do the following problems using the banker’s algorithm:

I. Compute what each process might still request and fill this in under the column Need.
II. Is the system in a safe state? Why or why not?
III. Is the system deadlocked? Why or why not?
IV. If a request from P3 arrives for (2,1,0,0), can the request be granted immediately?

c) The OS can detect the deadlocks with the help of Resource allocation graph. In single instanced resource types, if a cycle is being formed in the system, then there will definitely be a deadlock

Consider the following snapshot of a system in which five resources A, B, C, D and E are available. The system contains a total of 2 instances of A, 1 of resource B, 1 of resource C, 2 resource D and 1 of resource E

Do the following problems:

a. Convert this matrix representation to a resource allocation graph.
b. Use the deadlock detection algorithm to determine whether the system contains a deadlock. Which processes are involved in the deadlock?
c. While you are use the deadlock detection algorithm, add and remove directed edges of the re- source allocation graph.