| A | B |
| set of all processes in the system | job queue |
| set of all processes residing in main memory, ready and waiting to execute | ready queue |
| set of processes waiting for an I/O device | device queues |
| selects which processes should be in the ready queue | Long-term scheduler (job scheduler) |
| selects which process should be allocated the CPU | Short-term scheduler (CPU Scheduler) |
| Short-term scheduler is invoked very________ | frequently (milliseconds) Þ (must be fast) |
| Long-term scheduler is invoked very___________ | infrequently (seconds, minutes) Þ (may be slow) |
| long-term scheduler controls the_________ | degree of multiprogramming |
| 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 |
| What does it mean for the context-switch time to be overhead? | the system does no useful work while switching |
| How does a CPU Scheduler Work? | Selects from among the processes in memory that are ready to execute, and allocates the CPU to one of them |
| CPU scheduling decisions may take place when a process: | Switches states or terminates |
| How does a dispatcher work? | Dispatcher module gives control of the CPU to the process selected by the scheduler; |
| time it takes for the dispatcher to stop one process and start another running | Dispatch latency |
| keep the CPU as busy as possible | CPU utilization |
| # of processes that complete their execution per time unit | Throughput |
| amount of time to execute a particular process | Turnaround time |
| amount of time a process has been waiting in the ready queue | Waiting time |
| amount of time from when a request was submitted until the first response is produced. | Response time |
| What are the criteria for Scheduling? | CPU utilization, Throughput, Turnaround time, Waiting time, and Response time |