Project ForgeSign up free
Operating Systems
Process Scheduling
GATE 2009
Expert

In a process state transition diagram for a uniprocessor system (Start->Ready via A; Ready->Running via B; Running->Ready via C; Running->Terminated via D; Blocked->Ready via E; Running->Blocked via F), assume there are always some processes in the ready state. Consider: I. If a process makes a transition D, it would result in another process making transition A immediately. II. A process P2 in blocked state can make transition E while another process P1 is in running state. III. The OS uses preemptive scheduling. IV. The OS uses non-preemptive scheduling. Which of the above statements are TRUE?

  • AI and II
  • BI and III
  • II and III
  • DII and IV

Explanation

I is false: a process terminating (D) doesn't necessarily cause a NEW process's admission (A) — these are independent events. II is true: a blocked process P2 waking up to Ready (E) is entirely independent of whatever P1 is doing in Running — no conflict, since moving to Ready doesn't require the CPU. III is true: since transition C (Running->Ready) exists, the OS can forcibly move a running process back to ready — that IS preemption by definition, so IV (non-preemptive) is false. Correct: II and III.

Source: GATE CS 2009 (2009)

This question is part of a 15-day revision cycle — sign in and Project Forge will bring it back the day before you'd forget it.

Start revising free