真的是太懵圈了,突然发现操作系统还有调度算法这么一说。虽说操作系统课程已经过去了一年多了但是这种基础知识着实不能忘。
一 先来先服务算法
先来先服务算法是操作系统调度算法中最简单的算法,该算法可以用于作业调度,同样也可以用于进程调度,调度的策略非常简单,就是先来先服务。
二 短作业优先算法
短作业有限算法,同样作为操作系统调度算法中非常简单的算法,调度策略是优先选取运行所需时间短的任务。
三 高权值优先算法
这里分为抢占式和非抢占式算法,抢占式算法在高权值的任务进入时直接挤掉当前运行的任务。非抢占式算法在任务执行结束后,选取权值最高的任务执行。
四 高响应比优先算法
由于等待时间与服务时间之和就是系统对该作业的响应时间,故该优先权又相当于响应比RP。作业优先级随等待时间增高而增高。随着等待时间增加,将会越来越快的被分配到cpu
五 时间片轮转算法
给队列中的每一个任务分配固定的时间片,然后每个任务执行完固定的时间片后将被轮出。但是这种算法如果时间片大小过大,则会造成cpu资源的浪费,如果时间片过小进程间不断切换也会浪费cpu资源。
六 多级反馈队列算法
与时间片轮转算法非常相似,但是与其不同的式,拥有多个队列,当任务在第一个队列分配的时间片中无法完成全部任务时,将会被置入第二个队列中,分配给其的时间片大小会越来越大。由于大多数任务我们没有办法知道确切的运行时间。所以这种调度算法是目前最被广泛使用的调度算法。