在';过期';linux内核的队列?

在';过期';linux内核的队列?,linux,linux-kernel,scheduling,Linux,Linux Kernel,Scheduling,在linux内核2.4中: 实时进程的优先级为0-99,它们与nice进程共存于就绪队列中(谁的优先级在100到139之间)。 但实时进程应该运行到它们需要的时间,所以当它们的时间片被消耗时,它们会得到更多的时间 那么,实时进程是否可以存在于所有占用其时间片的进程都存在的过期队列中呢?首先,您正在混合使用2.4和2.6 Linux调度程序。2.4 Linux调度程序没有任何过期队列。活动队列和过期队列的概念是在Linux 2.6版开始的O(1)调度器中引入的 现在,您的问题的答案是-否。实时进程

在linux内核2.4中:

实时进程的优先级为0-99,它们与nice进程共存于就绪队列中(谁的优先级在100到139之间)。 但实时进程应该运行到它们需要的时间,所以当它们的时间片被消耗时,它们会得到更多的时间


那么,实时进程是否可以存在于所有占用其时间片的进程都存在的过期队列中呢?

首先,您正在混合使用2.4和2.6 Linux调度程序。2.4 Linux调度程序没有任何过期队列。活动队列和过期队列的概念是在Linux 2.6版开始的O(1)调度器中引入的

现在,您的问题的答案是-否。实时进程是以循环方式调度的,活动的、过期的数组仅用于sched_正常任务,即优先级范围为100-139的进程。

在linux O(1)scheduler 2.6版本中,基本上有三个无类的sched-FIFO sched-RR(循环)SCHED OTHERS,有0-139个队列可用,0-99个是实时QUEU,100-139个是非实时QUEU,根据您的问题,FIFO和RR中没有过期队列使用 但在其他类中,expire队列可能会使用该进程。该进程将在时间片发生后转到expire que,在中断/超时后,它将转到活动que