GATE CS 2017 Set 1 — Question 27
Go beyond PYQs with Success TrackerAI-powered personalised practice and doubt support. Unlimited practice on eligible plans; AI usage limits apply.MCQ+2 / -0.67MediumDeadlocksOperating SystemMutex & SpinlocksProcess Synchronization
Operating System → Deadlocks → Mutex & Spinlocks
Last updated
Question
A multithreaded program P executes with number of threads and uses number of locks for ensuring mutual exclusion while operating on shared memory locations. All locks in the program are non-reentrant, i.e., if a thread holds a lock , then it cannot re-acquire lock without releasing it. If a thread is unable to acquire a lock, it blocks until the lock becomes available. The minimum value of and the minimum value of together for which execution of P can result in a deadlock are:
Correct answer
(D) x = 1, y = 1
Solution
The problem specifies that the locks are non-reentrant. A non-reentrant lock cannot be acquired again by the thread that already holds it.Consider the case with (one thread) and (one lock ).
1.Thread acquires lock .
2.Thread attempts to acquire lock again (e.g., inside a recursive function or a nested critical section).
3.Since the lock is non-reentrant, must wait for to be released.
4.However, is held by itself, which is blocked waiting for . will never release .
This results in a deadlock (specifically, a self-deadlock). Thus, the minimum values are and .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…