linux进程/线程调度策略(SCHED_OTHER,SCHED_FIFO,SCHED_RR)

2 02 2 年,我接触到了Linux内核调度策略。
当时我很困惑。
共有三种方法:SCHED_OTHER、SCHED_FIFO 和 SCHED_RR。
怎么记住这些。
后来才知道SCHED_OTHER是一个分时进程。
物超所值和物超所值就像双刃剑。
美丽越小,计数器值越大,进程被调度的概率越高。
我明白了,但是 SCHED_FIFO 和 SCHED_RR 呢?有什么区别? SCHED_FIFO,如果某个进程正在占用CPU,则不会允许其运行,直到有更高优先级的作业接管或主动释放它。
至于SCHED_RR,就像打麻将一样。
每个进程都会进行一定的时间,然后轮流进行,以确保公平性。
这个SCHED_RR看起来比FIFO更人性化。
当时我做了一些计算,FIFO和RR,都是注重实时优先级,RR是FIFO的高级版本,我终于想通了。
我记得有一个城市使用了SCHED_RR,因为系统负载非常高。
其结果是,处理速度大大提高。
我什至没有数过省了多少钱。
Linux内核的调度策略确实是不可预测的。

有一个具有两道作业的批处理系统,作业调度采用短作业优先调度算法,进程调度采用以优先数为基础的抢占式