Question

    A system has three resources R1,R2,R3, with total

    instances 5, 3, and 4, respectively. Processes P1,P2,P3 are allocated (2, 1, 2), (1, 1, 1), and (1, 1, 2). The remaining needs are (1, 1, 1), (1, 1, 2), and (1, 1, 0). Can the system avoid deadlock?
    A Yes, if P1 completes first. Correct Answer Incorrect Answer
    B No, deadlock is inevitable. Correct Answer Incorrect Answer
    C Yes, if P2 completes first. Correct Answer Incorrect Answer
    D Yes, if P3 completes first. Correct Answer Incorrect Answer
    E Insufficient data to determine. Correct Answer Incorrect Answer

    Solution

    Using the Banker’s Algorithm, we determine if the system can execute all processes without entering a deadlock. 1. Available resources initially: R1=1,R2=0,R3=0 2. If P1 finishes first, it releases R1=2,R2=1,R3=2. Available becomes R1=3,R2=1,R3=2. 3. Now P2 can execute, releasing R1=1,R2=1,R3=1. Available becomes R1=4,R2=2,R3=3. 4. Finally, P3 completes, releasing all its resources. Hence, no deadlock occurs if P1 is completed first. Why Other Options Are Incorrect: • B) No, deadlock is inevitable: Incorrect because deadlock can be avoided by choosing the correct execution order. • C) & D): Incorrect as P2 or P3 cannot execute first due to insufficient resources. • E) Insufficient data: Incorrect as the problem provides all necessary data.

    Practice Next