Schedulers Long-term scheduler (or job scheduler) selects which processes – should be brought into the ready queue (or CPU scheduler) selects which process Short-term scheduler – should be executed next and allocates CPU Addition of Medium Term Scheduling Short-term scheduler is invoked very frequently (milliseconds) (must be fast) Long-term scheduler is invoked very infrequently (seconds, minutes) (may be slow) The long-term scheduler controls the degree of multiprogramming Processes can be described as either: I/O-bound process spends more time doing I/O than computations, – many short CPU bursts CPU-bound process spends more time doing computations; few very – long CPU bursts Context Switch When CPU switches to another process, the system must save the state of the old process and load the saved state for the new process via a context switch
Schedulers Long-term scheduler (or job scheduler) – selects which processes should be brought into the ready queue Short-term scheduler (or CPU scheduler) – selects which process should be executed next and allocates CPU Addition of Medium Term Scheduling Short-term scheduler is invoked very frequently (milliseconds) (must be fast) Long-term scheduler is invoked very infrequently (seconds, minutes) (may be slow) The long-term scheduler controls the degree of multiprogramming Processes can be described as either: I/O-bound process – spends more time doing I/O than computations, many short CPU bursts CPU-bound process – spends more time doing computations; few very long CPU bursts Context Switch When CPU switches to another process, the system must save the state of the old process and load the saved state for the new process via a context switch