Linux repositories inspector
January 2016


Miscellaneous system utilities for Linux


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
⇧ Top