Multi-tasking

From Computer History Wiki
(Redirected from Multiprogramming)
Jump to: navigation, search

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.

See also