Как предотвратить процесс FIFO с низким приоритетом от прерывания процесса FIFO с более высоким приоритетом?

Я работаю над ядром Linux и должен изменить политику планирования процесса на FIFO. Я изменил политику планирования процессов по умолчанию на FIFO через исходный код. Поскольку фактическое поведение политики говорит о том, что процесс с более высоким приоритетом (99) не будет вытесняться, наряду с ним также выполняются процессы с более низким приоритетом (1). После некоторых исследований я уже изменил sysctl_sched_rt_runtime на -1, но процессы с высоким приоритетом все еще вытесняются.

Может кто-нибудь сказать мне способ запуска одного процесса FIFO за один раз и отключение процесса FIFO с более низким приоритетом, чтобы выгрузить процесс FIFO с более высоким приоритетом. Нужно ли вручную увеличивать загрузку процессора пользовательским процессом? или это было бы связано с cgroups или каким-либо предупреждением в ядре, которое мне нужно обойти?

версия Ubuntu - 16.04 LTS, ядро ​​- 4.9.y

0 ответов

Другие вопросы по тегам