chrt : command not found

The chrt command is a utility in Linux that is used to set the real-time scheduling policy and priority of a process. Real-time scheduling is a type of scheduling algorithm that is used to give priority to certain processes and ensure that they are executed in a timely manner.

To use the chrt command, you will need to specify the priority level and scheduling policy that you want to set for a process. The priority levels range from -20 (highest priority) to 19 (lowest priority). The scheduling policies include SCHED_FIFO (first-in, first-out), SCHED_RR (round-robin), and SCHED_OTHER (normal scheduling).

For example, to set the priority level to -5 and the scheduling policy to SCHED_FIFO for the process with PID 12345, you can use the following command:

# chrt -f -p -5 12345

This will set the priority level to -5 and the scheduling policy to SCHED_FIFO for the process with PID 12345.

You can also use the chrt command with the -m option to display the current real-time scheduling policy and priority of a process:

# chrt -m 12345

This will display the current real-time scheduling policy and priority of the process with PID 12345.

If you encounter the below error while running the command chrt :

chrt: command not found

you may try installing the below package as per your choice of distribution:

Distribution Command
Debian apt-get install util-linux
Ubuntu apt-get install util-linux
Alpine apk add util-linux
Arch Linux pacman -S util-linux
Kali Linux apt-get install util-linux
CentOS yum install util-linux
Fedora dnf install util-linux
OS X brew install util-linux
Raspbian apt-get install util-linux

chrt Command Examples

1. Display attributes of a process:

# chrt --pid PID

2. Display attributes of all threads of a process:

# chrt --all-tasks --pid PID

3. Display the min/max priority values that can be used with `chrt`:

# chrt --max

4. Set the scheduling policy for a process:

# chrt --pid PID --deadline|idle|batch|rr|fifo|other

Conclusion

The chrt command is useful for fine-tuning the performance of real-time processes and ensuring that they are given the necessary resources to execute in a timely manner. It is also useful for setting the real-time scheduling policy and priority of processes that require a higher level of priority, such as audio or video playback applications.

Related Post