操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

 操作系统(3)_CPU调度_李善平ppt操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

不只上面的四种,比如时间片到了也会引起调度。

操作系统(3)_CPU调度_李善平ppt

具体的调度算法:

操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

fcfs简单,但是波动很大。

操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

最高相应比算法,执行时间最长就应该等待的长点,比sjf多了一个等待时间的考虑。

操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

硬件定时器和软件计数器共同实现,定时到了把计数器减1,减到0表示时间片到了。 任何进程的等待时间是有上限的 (n-1)q,能保证响应时间。

操作系统(3)_CPU调度_李善平ppt

时间片到了,会回到等待队列的末尾。

 操作系统(3)_CPU调度_李善平ppt

轮转法时间片长短选择很重要,太小会导致大量的上下文切换,太少的话无法体现轮转法响应快的特点。

操作系统(3)_CPU调度_李善平ppt

 操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

多层反馈队列无法评判对错,看是否满足需求。

操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

操作系统(3)_CPU调度_李善平ppt

 实际中Linux结合使用了轮转法,多层队列和优先权法,最短作业最高响应比算法实际不可行。