Science Fair Project Encyclopedia
In computing, cooperative multitasking (or non-preemptive multitasking) is a form of multitasking in which multiple tasks execute by voluntarily ceding control to other tasks at programmer-defined points within each task. Operating systems such as Microsoft Windows prior to Windows 95 1, and Mac OS prior to Mac OS X relied on this approach to execute multiple programs simultaneously. While its usage in modern computing is on the wane, RISC OS is an example of an operating system which still retains this method.
Cooperative multitasking has the advantage of making the operating system design much simpler, but it also makes it less stable because a poorly designed application may not cooperate well. Preemptive multitasking, on the other hand, puts the onus on the programmer to notify the system of sections of code where the application must not be pre-empted.
Note 1: In Windows/386, released 1987, it was possible to have two or more DOS applications running simultaneously in separate DOS boxes , under preemptive multitasking, but Windows applications had to run under cooperative multitasking.
The contents of this article is licensed from www.wikipedia.org under the GNU Free Documentation License. Click here to see the transparent copy and copyright details