GATE CS 2021 Set 2 — Question 53
Go beyond PYQs with Success TrackerAI-powered personalised practice and doubt support. Unlimited practice on eligible plans; AI usage limits apply.MSQ+2 / -0HardDeadlock PreventionDeadlocksOperating System
Operating System → Deadlocks → Deadlock Prevention
Last updated
Question
Consider a computer system with multiple shared resource types, with one instance per resource type. Each instance can be owned by only one process at a time. Owning and freeing of resources are done by holding a global lock (L). The following scheme is used to own a resource instance :Which of the following choice(s) about the above scheme is/are correct?
function OWNRESOURCE(Resource R)
Acquire lock L // a global lock
if R is available then
Acquire R
Release lock L
else
if R is owned by another process P then
Terminate P, after releasing all resources owned by P
Acquire R
Restart P
Release lock L
end if
end if
end function
Correct answer
(A) The scheme ensures that deadlocks will not occur.; (B) The scheme may lead to live-lock.; (C) The scheme may lead to starvation.
Solution
1.Deadlock: The scheme uses preemption (terminating process and releasing its resources) to resolve resource conflicts. By allowing preemption, the circular wait condition for deadlock is broken. Therefore, deadlocks will not occur. (A is correct)
2.Live-lock: Two processes could repeatedly preempt each other. For example, owns , preempts to get , then restarts and preempts to get back. This cycle can continue indefinitely without either process making progress. (B is correct)
3.Starvation: A process could be repeatedly terminated and restarted by other processes, never getting a chance to complete its execution. (C is correct)
4.Mutual Exclusion: The global lock ensures that the check for resource availability and its acquisition are atomic. Only one process can successfully execute the acquisition logic for a specific resource at any time. (D is incorrect)
Continue learning with Success Tracker
A step still unclear? Work through it with support
Use Success Tracker to ask about the reasoning, then try another GATE CS question to check your understanding.
AI-powered practice· Unlimited practice on eligible plans
- PYQs with solutions
- Attempt available previous-year questions, then compare your reasoning with the worked solution. Coverage varies by stream.
- Practice that adapts
- Choose a topic, work on weaker areas and bookmark questions to revisit. Your attempts feed your progress tracking.
- AI doubt support
- Ask follow-up questions about a step or concept while practising, instead of stopping at the final answer.
Unlimited practice is available on eligible plans. Free practice and AI usage have limits; check the current plan allowances before choosing.
This page stays readable without an account. AI responses can be wrong; check them against the solution and source material.
More questions on Deadlocks
2026 Set 2 Q23Which one of the following CPU scheduling algorithms cannot be preemptive?2026 Set 1 Q29With respect to deadlocks in an operating system, which of the following statements is/are FALSE?2026 Set 1 Q31In the context of relational database normalization, which of the following statements is/are true?2026 Set 1 Q35Consider a system consisting of instances of a resource , being shared by 5 processes.…2026 Set 2 Q51Consider three processes P1, P2, and P3 running identical code, as shown in the pseudocode below. A…