Deadlock:
A- Given the sequence of resource requests below, draw the resource allocation graph and answer the following questions:
- Process A is holding resource S and is requesting resource X.
- Process B is holding resources X, Y and is requesting resource W.
- Process C is holding resource W and is requesting resource Z.
- Process D is holding resource Z and is requesting resource Y and S.
1- List the reasons which causes deadlock to occur in multiprogramming environment.
2-Discuss how can the deadlock detection algorithm for one resource find out if a deadlock exists in the above sequence?
3- List the deadlocked processes.
4- Discuss at least two possible recovery solutions. Which one is better? Why?
5- List the recovery process-scheduling sequence corresponding to each solution given in
the question above.
B- Name a proper method to be used for each of the following cases: Banker's algorithm
- Deadlock avoidance for multiprogramming system. ------- preemption--------------------
- Deadlock recovery for real-time system. ---------------------------
- Disk head scheduling for busy system. ---------------------------
- File system implementation for batch applications. ---------------------------
- Data transfer method for Database applications. ---------------------------
C- Consider a system state which consists of the set of running processes A, B, C, D, and E. Assume that the system has four different types of resources R1, R2, R3, and R4. The total numbers of resource copies available in the system are: 6, 4, 4, and 2 in order. The maximum claim and the current resources allocation tables are given below.
Process
|
R1
|
R2
|
R3
|
R4
|
A
|
3
|
2
|
2
|
1
|
B
|
4
|
2
|
2
|
2
|
C
|
2
|
2
|
1
|
0
|
D
|
3
|
2
|
2
|
2
|
E
|
2
|
3
|
1
|
1
|
Maximum Claim Table
Process
|
R1
|
R2
|
R3
|
R4
|
A
|
2
|
0
|
1
|
1
|
B
|
1
|
1
|
1
|
0
|
C
|
1
|
1
|
0
|
0
|
D
|
1
|
0
|
1
|
0
|
E
|
0
|
1
|
0
|
1
|
Current Allocation Table
1- List the resource allocation table for each individual resource type.
2- Is the current system state safe? Why?
3- Answer the above question if D requests a copy of R4 and another copy of R2.
Answer question number 2above if C requests a copy of R1 and at the same time B reserved a copy of R3.