Differentiate pre-emptive and non-preemptive scheduling
In a pre-emptive scheduling technique, CPU can be taken away from a process if there is a requirement while in a non-pre-emptive approach if one time a process has been given the CPU, the CPU not taken away from that process, if not the process completes or leaves the CPU for carrying out an Input Output.
Pre-emptive scheduling is more helpful in high priority process which needs immediate response, for example in real time system. Whereas in non-preemptive systems, jobs are prepared to wait by longer jobs though, treatment of all processes is fairer.