CFS
не имеет временных интервалов "как было в предыдущем планировщике".
В CFS
квант времени — это в основном продолжительность между последовательными переключениями, чтобы предоставить время выполнения ЦП одному и тому же потоку. Это дает вам два варианта:
Все ваши потоки имеют достаточно времени для выполнения как минимум min_granularity_ns
в течение одного latency_ns
. Тогда вашtimeslice = scheduling period * (task's weight/total weight of tasks in the run queue)
Слишком много потоков, чтобы поместиться в latency_ns
, поэтому ваши кванты времени увеличиваются, чтобы вместить больше потоков, которые хотят выполняться в соответствии сtimeslice = number_of_running_tasks * sched_min_granularity_ns
Вот почему CFS
означает Полностью Fair Scheduler, так как он не исключает потоки с более низким приоритетом, а без разбора расширяет кванты времени для всех.
Это могло быть sed
возможным, учитывая две или более фамилий и имен:
SANCHEZ Rick Ignatius Alexander
SMITH Morty
FOO VAN SOMETHING Halen
Команда;
sed 's/^\([^a-z]*\)[[:blank:]]\(.*\)$/\2 \1/' file
Выход:
Rick Ignatius Alexander SANCHEZ
Morty SMITH
Halen FOO VAN SOMETHING
Скажите, работает ли это для вас.
Или альтернативный вариант sed
с сохранением отчества в конце
Этот вход
SANCHEZ Rick
SMITH Morty
VAN SOMETHING Halen
MCSMITH Some Body
С этим
sed -E "s/^([A-Z ]+) ([A-Z][a-z]+)(.*)/\2 \1\3/" file1
Дает этот вывод
Rick SANCHEZ
Morty SMITH
Halen VAN SOMETHING
Some MCSMITH Body