Multi-tasking
From Computer History Wiki
(Redirected from Multiprogramming)
Multi-tasking operating systems are a subset of operating systems - now, by far the predominant form - which allow multiple programs to run at the same time (usually as processes).
There are two principal types: preemptive multi-tasking, in which computations can be (unknownst to them) interrupted in the middle of their work to allow other computations to run; and cooperative multi-tasking, in which a running computation has to explicitly 'give up' the machine, in order for another computation to run.
Note that this relinquishment may be a side effect of something the computation does, not an explicit giveaway; e.g. it may call for some input/output, and while waiting for that to happen, some other computation may be run.