先来先服务这种算法按照进程到来的先后顺序进行执行,这种算法利于长作业,不利于短作业,因为短作业的进程必须等待长作业完成后才能执行,因此会等待很长时间。

先来先服务

这种算法按照进程到来的先后顺序进行执行,这种算法利于长作业,不利于短作业,因为短作业的进程必须等待长作业完成后才能执行,因此会等待很长时间。

短任务优先

这种算法虽然有利于短作业 ,但是如果 一个 作业太长,也会出现长时间的等待。

最短剩余时间优先

这种算法通过估计进程的运行时间,允许最短时间的作业出现抢占;

时间片轮转

将所有的就绪进程放进队列中,每次调度的时候,将CPU分配给首进程,该进程可以执行一个时间片,当到达规定的时间片的时候,计数器会发出时钟中断,此时首进程放到队尾,cpu重新进行分配到首进程;

这种算法虽然能够保证每个进程都能执行,但是进程的切换需要设置新的环境,如果时间片太小,进程的切换会过于频繁,效率下降,如果时间片过大,又会导致实时性不够。

优先级调度

这种算法给不同的进程进行分配优先级,按照优先级高的进行运行。同时为了优先级低的等不到cpu的分配,规定随着时间的推移增加进程的优先级;

多级反馈队列

多级反馈设置了多个队列,同时给了每个队列不同的优先级,且每个队列的时间片的大小也不同。第一个队列的优先级最高,第二队列次之,依次类推,同时第一个队列的时间片最小,往后的队列时间片逐渐增大。当出现一个新的进程的时候,首先将其放进第一优先级队列中,当执行完时间片时,如果该进程没有执行完,就会被移到第二队列中,只有当前队列的上一个队列没有进程进行排队的 时候,CPU才会分配到当前队列;