What type of processes typically make the most efficient use of the CPU?
What type of processes typically make the most efficient use of the CPU?
Answer: B. CPU-bound processes — Every process can be classified by how it spends its CPU bursts: a CPU-bound process performs long stretches of computation with very few I/O requests, so…
- A.
I/O-bound processes
- B.
CPU-bound processes
- C.
Equal I/O-bound and CPU-bound processes
- D.
Processes in the waiting state
Attempted by 480 students.
Show answer & explanation
Correct answer: B
Every process can be classified by how it spends its CPU bursts: a CPU-bound process performs long stretches of computation with very few I/O requests, so almost all of the time it holds the CPU is spent actively executing instructions; an I/O-bound process issues frequent I/O requests and spends most of its own execution blocked waiting for those operations rather than computing, so from that process's own perspective it makes comparatively little use of the CPU (the OS is free to schedule a different ready process on the CPU while it waits).
Applying this to the process types listed here: the type that rarely blocks on I/O and mostly computes is, by definition, the one that keeps the CPU continuously busy for the largest share of its own execution time — which is exactly what "efficient use of the CPU" means for a single process. That is the CPU-bound process.
It's worth separating this from a different, equally real OS concept: schedulers try to admit a balanced mix of CPU-bound and I/O-bound processes into the system so that both the CPU and the I/O devices stay busy at the same time, improving overall system throughput. That is a statement about a queue of many processes and system-wide utilization — it does not answer which single type of process, on its own, makes the most efficient use of the CPU, which is what this question asks.
I/O-bound processes — spend a large share of their own execution blocked waiting on I/O rather than computing, so that process itself is not using the CPU during those waits (though the OS may run a different ready process meanwhile).
Equal mix of CPU-bound and I/O-bound processes — describes a system-level scheduling goal (keeping the CPU and I/O devices both busy), not a single process's own CPU efficiency.
Processes in the waiting state — hold no CPU time at all while waiting, so their CPU utilization during that period is zero.
So the process type that most efficiently uses the CPU is the CPU-bound process.