Which combination of the following features will suffice to characterize an OS as a multi-programmed OS?
- More than one program may be loaded into main memory at the same time for execution
- If a program waits for certain events such as I/O, another program is immediately scheduled for execution
- If the execution of a program terminates, another program is immediately scheduled for execution.
View worked solution
Answer: B
To characterize an Operating System as multi-programmed, we must look at its primary objective: maximizing CPU utilization by keeping the CPU busy at all times.
Let us analyze the given features:
- Feature (a): "More than one program may be loaded into main memory at the same time for execution."
This is a fundamental prerequisite for multiprogramming. If only one program can reside in memory at a time, the OS cannot switch to another program without performing slow disk swaps. - Feature (b): "If a program waits for certain events such as I/O, another program is immediately scheduled for execution."
This is the defining mechanism of multiprogramming. When the currently running process blocks (e.g., waiting for I/O), the OS context-switches to another ready process in memory, ensuring the CPU does not sit idle. - Feature (c): "If the execution of a program terminates, another program is immediately scheduled for execution."
This describes sequential execution or a basic batch processing system. Even a uniprogrammed system (where only one program resides in memory at a time) can load and run the next program immediately after the current one terminates. Thus, this feature alone does not characterize multiprogramming.
Therefore, the combination of (a) and (b) is both necessary and sufficient to characterize an OS as multi-programmed.
Free practice · Your answers on this page are not saved.
