A type of multitasking in which the process currently controlling the CPU must offer control to other processes. It is called cooperative because all programs must cooperate for it to work. If one program does not cooperate, it can hog the CPU. In contrast, preemptive multitasking forces applications to share the CPU whether they want to or not. Versions 8.0-9.2.2 of Macintosh OS and Windows 3.x operating systems are based on cooperative multitasking, whereas UNIX, Windows 95, Windows NT, OS/2, and later versions of Mac OS are based on preemptive multitasking.