chrt — manipulate the real-time attributes of a process


chrt [options] priority command [ argument... ]

chrt [options] −p [priority] pid


chrt sets or retrieves the real-time scheduling attributes of an existing pid, or runs command with the given attributes.


−o, −−other

Set scheduling policy to SCHED_OTHER. This is the default Linux scheduling policy.

−f, −−fifo

Set scheduling policy to SCHED_FIFO.

−r, −−rr

Set scheduling policy to SCHED_RR. When no policy is defined, the SCHED_RR is used as the default.

−b, −−batch

Set scheduling policy to SCHED_BATCH (Linux-specific, supported since 2.6.16). The priority argument has to be set to zero.

−i, −−idle

Set scheduling policy to SCHED_IDLE (Linux-specific, supported since 2.6.23). The priority argument has to be set to zero.

−d, −−deadline

Set scheduling policy to SCHED_DEADLINE (Linux-specific, supported since 3.14). The priority argument has to be set to zero. See also −−sched−runtime, −−sched−deadline and −−sched−period. The relation between the options required by the kernel is runtime <= deadline <= period. chrt copies period to deadline if −−sched−deadline is not specified and deadline to runtime if −−sched−runtime is not specified. It means that at least −−sched−period has to be specified. See sched(7) for more details.


−T, −−sched−runtime nanoseconds

Specifies runtime parameter for SCHED_DEADLINE policy (Linux-specific).

−P, −−sched−period nanoseconds

Specifies period parameter for SCHED_DEADLINE policy (Linux-specific).

−D, −−sched−deadline nanoseconds

Specifies deadline parameter for SCHED_DEADLINE policy (Linux-specific).

−R, −−reset−on−fork

Add SCHED_RESET_ON_FORK flag to the SCHED_FIFO or SCHED_RR scheduling policy (Linux-specific, supported since 2.6.31).


−a, −−all−tasks

Set or retrieve the scheduling attributes of all the tasks (threads) for a given PID.

−m, −−max

Show minimum and maximum valid priorities, then exit.

−p, −−pid

Operate on an existing PID and do not launch a new task.

−v, −−verbose

Show status information.

−V, −−version

Display version information and exit.

−h, −−help

Display help text and exit.


The default behavior is to run a new command:

chrt priority command[arguments]

You can also retrieve the real-time attributes of an existing task:

chrt −p pid

Or set them:

chrt −r −p priority pid


A user must possess CAP_SYS_NICE to change the scheduling attributes of a process. Any user can retrieve the scheduling information.


Only SCHED_FIFO, SCHED_OTHER and SCHED_RR are part of POSIX 1003.1b Process Scheduling. The other scheduling attributes may be ignored on some systems.

Linux' default scheduling policy is SCHED_OTHER.


nice(1), renice(1), taskset(1), sched(7)

See sched_setscheduler(2) for a description of the Linux scheduling scheme.


Robert Love

Karel Zak


The chrt command is part of the util-linux package and is available from

  chrt(1) manpage

Copyright (C) 2004 Robert Love
Copyright (C) 2015 Karel Zak <>

This is free documentation; you can redistribute it and/or
modify it under the terms of the GNU General Public License,
version 2, as published by the Free Software Foundation.

The GNU General Public License's references to "object code"
and "executables" are to be interpreted as the output of any
document formatting or typesetting system, including
intermediate and printed output.

This manual is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.

You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.