Difficulty: Easy
Correct Answer: block
Explanation:
Introduction / Context:
Process scheduling models describe how processes move among states such as running, ready, and blocked (waiting). Recognizing which transitions are self-initiated by a process versus those triggered by the scheduler or devices is essential in operating systems theory and practice.
Given Data / Assumptions:
Concept / Approach:
A process moves to the blocked (waiting) state by performing an operation that cannot complete immediately—commonly a synchronous I/O request, a sleep call, or waiting on a synchronization primitive. By contrast, dispatch, wake-up, and timer-driven preemption are not initiated by the process itself.
Step-by-Step Solution:
From running, the process issues a blocking call (e.g., read on a slow device or wait on a semaphore).The kernel places the process into the blocked queue associated with that event.Later, an external event (I/O completion or signal) triggers the wake-up, moving it to ready.The scheduler will eventually dispatch it back to running.
Verification / Alternative check:
Trace a system call like read on a disk file: the process cannot proceed until data arrives, so it voluntarily blocks. It does not self-dispatch, self-wake, or generate its own timer expiration.
Why Other Options Are Wrong:
Dispatch: performed by the scheduler, not by the process.Wake up: triggered by an external event or the kernel on behalf of a device.Timer run out: caused by a clock interrupt that preempts the process.
Common Pitfalls:
Final Answer:
block.
Discussion & Comments