- Except on simple embedded systems, monoprogramming is hardly used any more
- A simple method to accommodate several programs in memory at the same time (to support multiprogramming) is partitioning
- The easiest way to achieve multiprogramming is simply to divide memory up into n (possibly unequal) partitions during system generation or startup
- When a job arrives, it can be put into the input queue for the smallest partition large enough to hold it
- The aim of multiprogramming is to increase the CPU utilization
-
, where n is the number of processes in the memory, p is waiting-time fraction that a process spends for I/O.
- say , means process spend 80 percent of their time waiting for I/O and n=10; then
, in other words CPU wasted 11 percent.
Figure 4.4:
(a) Fixed memory partitions with separate input queues for each partition. (b) Fixed memory partitions with a single input queues.
|
2004-05-25