Scheduling methods
Scheduling algorithms may use different criteria for selecting process from the ready list. In general,scheduling algorithm may be preemptive or nonpreemptive. Four circumstances are used for making scheduling decisions. 1. When a process switches from running state to the waiting state. 2. When a process switches from the running state to the ready state. 3. When a process switches from the waiting state to the ready state. 4. When a process terminates. Preemptive scheduling takes place for circumstances 2 and 3. Nonpreemptive scheduling takes place under circumstances 1 and 4. For 1 and 4 circumstances, scheduling is not possible and for remaining circumstance, scheduling is possible. In preemptive scheduling, a running process may be replaced by a higher priority process at any time. Preemptive scheduling is more responsive but it imposes higher overhead since each process rescheduling entails a complete process switch. In Nonpreemptive scheduling, once the CPU has been all...