Skip to content
Official PYQ · 2009

GATE CS 2009 Q32 — CPU Scheduling

Explain with AI

In the following process state transition diagram for a uniprocessor system, assume that there are always some processes in the ready state:

Now consider the following statements:

  1. If a process makes a transition DD, it would result in another process making transition AA immediately.
  2. A process P2P_2 in blocked state can make transition E while another process P1P_1 is in running state.
  3. The OS uses preemptive scheduling.
  4. The OS uses non-preemptive scheduling.

Which of the above statements are TRUE?

Choose one option
View worked solution

Answer: C

To determine the correct statements, let us analyze the standard process state transitions shown in the diagram:

  • Transition A: Ready→Running\text{Ready} \rightarrow \text{Running} (Dispatch)
  • Transition B: Running→Ready\text{Running} \rightarrow \text{Ready} (Preemption/Time-out)
  • Transition D: Running→Blocked\text{Running} \rightarrow \text{Blocked} (I/O or Event Wait)
  • Transition E: Blocked→Ready\text{Blocked} \rightarrow \text{Ready} (I/O or Event Completion)

Now, let us evaluate the statements:

  • Statement I is FALSE: When a process makes transition DD (Running →\rightarrow Blocked), the CPU becomes idle. Before another user process can make transition AA (Ready →\rightarrow Running), the OS scheduler must execute to select the next process. Thus, transition AA does not happen "immediately" without this intermediate scheduling overhead.
  • Statement II is TRUE: Transition EE (Blocked →\rightarrow Ready) occurs when an asynchronous I/O operation completes. This event is handled via an interrupt and can occur while another process P1P_1 is actively executing in the Running\text{Running} state.
  • Statement III is TRUE (and IV is FALSE): The existence of transition BB (Running →\rightarrow Ready) indicates that a process can be taken off the CPU and placed back into the ready queue before it finishes or blocks. This is the defining characteristic of preemptive scheduling.

Therefore, statements II and III are TRUE.

Free practice · Your answers on this page are not saved.

Published
Report a correction
Keep exploringMore CPU Scheduling questions