文档介绍:Module 6: CPU Scheduling
Basic Concepts (基本概念)
Scheduling Criteria (调度准则)
Scheduling Algorithms (调度算法)
Multiple-Processor Scheduling (多处理器调度)
Real-Time Scheduling (实时调度)
Algorithm Evaluation (算法评估)
Applied Operating System Concepts
Basic Concepts
Maximum CPU utilization obtained with multiprogramming
(通过多道程序设计得到CPU的最高利用率)
CPU–I/O Burst Cycle – Process execution consists of a cycle of CPU execution and I/O wait.
(CPU-I/O脉冲周期- 进程的执行包括进程在CPU上执行和等待I/O)
CPU burst distribution
(CPU脉冲的分布)
Applied Operating System Concepts
Alternating Sequence of CPU And I/O Bursts
Applied Operating System Concepts
Histogram of CPU-burst Times
Applied Operating System Concepts
CPU Scheduler
Selects from among the processes in memory that are ready to execute, and allocates the CPU to one of them.(选择内存中的就绪进程,并分配CPU给其中之一)
CPU scheduling decisions may take place when a process
(CPU调度可能发生在当一个进程):
1. Switches from running to waiting state(从运行转到等待).
2. Switches from running to ready state(从运行转到就绪).
3. Switches from waiting to ready(从等待转到就绪).
4. Terminates(终止运行).
Scheduling under 1 and 4 is nonpreemptive (发生在1、4两种情况下的调度称为非抢占式调度).
All other scheduling is preemptive (其他情况下发生的调度称为抢占式调度).
Applied Operating System Concepts
Dispatcher
Dispatcher module gives control of the CPU to the process selected by the short-term scheduler; this involves(进程调度模块负责将对CPU的控制权转交给由CPU调度程序,包括):
switching context(切换上下文)
switching to user mode(切换到用户态)
jumping to the proper location in the user program to restart that program(跳转到用户程序的适当位置并重新运行之)
Dispatch latency – time it takes for the dispatcher to stop one process and start another running(调度时间–调度程序终止一个进程的运行并启动另一个进程运行所花的时间).
Applied Operating System Concepts
Scheduling Criteria
CPU utilization – keep the CPU as busy as possible (CPU利用率–使CPU尽可能的忙碌)
Throughput – the number of processes plete their execution per time unit(吞吐量–单位时间内运行完的进程数)
Turnaround time – the interval from submission pletion (周转时间–进程从提交到运行结束的全部时间)
Waiting time – amount of time a proces