Step 1: Define multiprogramming and a uni-processor system.
- A uni-processor system contains a single CPU.- Multiprogramming is a method where the CPU handles multiple programs seemingly at the same time. The goal is to maximize CPU utilization by switching to another program when the current one is waiting (e.g., for I/O).
Step 2: Explain how multiprogramming functions on a uni-processor system.
Because there's only one CPU, only one instruction executes at any given moment. To achieve concurrent execution, the operating system uses scheduling to quickly alternate CPU execution between different programs (processes). This rapid switching, called time-sharing or context switching, gives the impression of simultaneous execution.
Step 3: Assess the options.
(A) This describes multiprocessing, which is different from multiprogramming on a uni-processor.(B) This correctly describes multiprogramming on a single CPU: the CPU's time is divided among programs.(C) This is incorrect. Multiprogramming is specifically designed for uni-processor systems.(D) This is self-contradictory. A uni-processor system, by definition, has only one processor.