Preemptive Multitasking
Essay by review • November 25, 2010 • Essay • 296 Words (2 Pages) • 725 Views
Preemptive Multitasking
A multitasking method that shares processing time with all running programs. Preemptive multitasking creates a time-shared environment in which running programs get a recurring slice of time from the CPU. Depending on the operating system, the time slice may be the same for all programs or it may be adjustable to meet the current mix of programs and users. For example, background programs can be given more CPU time no matter how heavy the foreground load and vice versa. Preemptive multitasking is vital in a mainframe, but is also useful in a desktop operating system. For example, it ensures that data will not be lost if a transmission is taking place in the background. The OS is able to grab the machine cycles that the modem or network program needs to continue processing the incoming data stream.
Non-Preemptive Multitasking
A multitasking environment in which an application is able to give up control of the CPU to another application only at certain points, such as when it is ready to accept input from the keyboard. Under this method, one program performing a large number of calculations, for example, can dominate the machine and cause other applications to have limited access to the CPU. Non-preemptive multitasking is also called cooperative multitasking, because programs must be designed to cooperate with each other in order to work together effectively in this environment. A non-preemptive multitasking operating system cannot guarantee service to a communications program running in the background. If another application has usurped the CPU, the CPU cannot process the interrupts from the communications program quickly enough to capture the incoming data, and data can be lost.
...
...