Linux команды · 3 min read · Dec 22, 2025

Учебник по команде chrt в Linux для начинающих (5 примеров)

Процессы составляют основу работающей системы Linux. Когда программа преобразуется в процесс (то есть когда она выполняется), устанавливается множество атрибутов. Иногда вам может понадобиться изменить эти атрибуты во время выполнения. Существует инструмент командной строки chrt, который позволяет это сделать.

В этом учебнике мы обсудим эту утилиту с несколькими простыми примерами. Но прежде чем мы это сделаем, стоит упомянуть, что все примеры в этой статье были протестированы на машине с Ubuntu 18.04 LTS.

Команда chrt в Linux

Как уже упоминалось в разделе введения выше, команда chrt позволяет вам управлять атрибутами реального времени процесса. Вот ее синтаксис:

chrt [options] -p [prio] pid

А вот как страница man этого инструмента объясняет это:

       chrt sets or retrieves the real-time scheduling attributes of an exist?  
       ing pid, or runs command with the given attributes.  Both  policy  (one  
       of  SCHED_OTHER,  SCHED_FIFO, SCHED_RR, SCHED_BATCH, or SCHED_IDLE) and  
       priority can be set and retrieved.  
  
       The SCHED_BATCH policy is supported since Linux 2.6.16.  The SCHED_IDLE  
       policy is supported since Linux 2.6.23.  
  
       The  SCHED_RESET_ON_FORK  flag  for policies SCHED_RR and SCHED_FIFO is  
       supported since Linux 2.6.31.

Следующие примеры в формате вопросов и ответов должны дать вам хорошее представление о том, как работает команда chrt.

Вопрос 1. Как использовать команду chrt?

Предположим, вы хотите изменить политику планирования или приоритет процесса gedit. Первое, что вам нужно сделать, это получить идентификатор процесса для этого процесса, что вы можете сделать с помощью команды pidof.

pidof gedit

На моей системе, например, вышеуказанная команда выдала pid ‘6063’ в качестве результата. Теперь, чтобы получить текущую политику планирования и приоритет для процесса gedit, используйте chrt следующим образом:

chrt -p 6063

А вот вывод, который эта команда произвела на моей системе:

pid 6063's current scheduling policy: SCHED_OTHER  
pid 6063's current scheduling priority: 0

Вопрос 2. Как заставить chrt показать минимальные/максимальные допустимые приоритеты?

Это можно сделать с помощью параметра командной строки -m.

chrt -m

Например, на нашей системе вышеуказанная команда выдала следующий вывод:

SCHED_OTHER min/max priority    : 0/0  
SCHED_FIFO min/max priority    : 1/99  
SCHED_RR min/max priority    : 1/99  
SCHED_BATCH min/max priority    : 0/0  
SCHED_IDLE min/max priority    : 0/0

Вам нужно будет обратиться к этим значениям для установки приоритета при установке политик планирования.

Вопрос 3. Как установить политику планирования на SCHED_BATCH?

Это можно сделать с помощью параметра командной строки -b.

Например:

chrt -b -p 0 6063

Теперь, если вы снова проверите политику планирования для gedit, используя следующую команду:

chrt -p 6063

Вы должны получить вывод, похожий на следующий, что означает, что внесенные вами изменения были применены:

pid 6063's current scheduling policy: SCHED_BATCH  
pid 6063's current scheduling priority: 0

Вопрос 4. Как установить политику планирования на SCHED_FIFO?

Это можно сделать с помощью параметра командной строки -f.

chrt -f -p 20 6063

Как и в предыдущем вопросе и ответе, вы можете перепроверить изменения, используя команду chrt -p. Обратите внимание, что вам могут потребоваться права суперпользователя для использования параметра командной строки -f.

Вопрос 5. Как установить политику планирования на SCHED_OTHER?

Это можно сделать с помощью параметра командной строки -o.

chrt -o -p 0 6063

Чтобы проверить, используйте команду chrt -p.

chrt -p 6063

Вот вывод в моем случае:

pid 6063's current scheduling policy: SCHED_OTHER  
pid 6063's current scheduling priority: 0

Заключение

Согласен, команда chrt не является инструментом, который вы можете использовать каждый день. Черт возьми, вам может даже не понадобиться она, пока вы не займётесь управлением системой или работой над чем-то, связанным с планированием ядра. Тем не менее, стоит знать, что такой инструмент существует. Для получения дополнительной информации о chrt, перейдите на его страницу man.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.