Em novos kernels, o Completely Fair Scheduler é usado (substitui o planejador O (1) dos kernels mais antigos).
O CFS armazena a tarefa planejada em uma árvore vermelha e preta e usa a quantidade de tempo de CPU gasto para o processo que foi executado como uma chave. Isso permite que o planejador escolha o processo com a menor quantidade de tempo de execução (que é armazenado no nó do modo esquerdo da árvore) de forma eficiente.
Quando a tarefa estiver prestes a ser executada, ela será removida da árvore e, quando for executada, será adicionada novamente com o novo tempo de CPU usado.
Os processos que estão "adormecidos" por um longo período receberão automaticamente um aumento de prioridade, já que eles não têm um grande tempo gasto na CPU.
Portanto, é "justo", já que os processos que estão em suspensão recebem tanto tempo de CPU quanto os processos em execução constante