{
    "mode": "man",
    "parameter": "chrt",
    "section": "1",
    "url": "https://www.chedong.com/phpMan.php/man/chrt/1/json",
    "generated": "2026-06-03T03:32:48Z",
    "synopsis": "chrt [options] priority command argument ...\nchrt [options] -p [priority] PID",
    "sections": {
        "NAME": {
            "content": "chrt - manipulate the real-time attributes of a process\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "chrt [options] priority command argument ...\n\nchrt [options] -p [priority] PID\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "chrt sets or retrieves the real-time scheduling attributes of an existing PID, or runs\ncommand with the given attributes.\n",
            "subsections": []
        },
        "POLICIES": {
            "content": "",
            "subsections": [
                {
                    "name": "-o --other",
                    "content": "Set scheduling policy to SCHEDOTHER (time-sharing scheduling). This is the default Linux\nscheduling policy.\n",
                    "flag": "-o",
                    "long": "--other"
                },
                {
                    "name": "-f --fifo",
                    "content": "Set scheduling policy to SCHEDFIFO (first in-first out).\n",
                    "flag": "-f",
                    "long": "--fifo"
                },
                {
                    "name": "-r --rr",
                    "content": "Set scheduling policy to SCHEDRR (round-robin scheduling). When no policy is defined,\nthe SCHEDRR is used as the default.\n",
                    "flag": "-r",
                    "long": "--rr"
                },
                {
                    "name": "-b --batch",
                    "content": "Set scheduling policy to SCHEDBATCH (scheduling batch processes). Linux-specific,\nsupported since 2.6.16. The priority argument has to be set to zero.\n",
                    "flag": "-b",
                    "long": "--batch"
                },
                {
                    "name": "-i --idle",
                    "content": "Set scheduling policy to SCHEDIDLE (scheduling very low priority jobs). Linux-specific,\nsupported since 2.6.23. The priority argument has to be set to zero.\n",
                    "flag": "-i",
                    "long": "--idle"
                },
                {
                    "name": "-d --deadline",
                    "content": "Set scheduling policy to SCHEDDEADLINE (sporadic task model deadline scheduling).\nLinux-specific, supported since 3.14. The priority argument has to be set to zero. See\nalso --sched-runtime, --sched-deadline and --sched-period. The relation between the\noptions required by the kernel is runtime ⇐ deadline ⇐ period. chrt copies period to\ndeadline if --sched-deadline is not specified and deadline to runtime if --sched-runtime\nis not specified. It means that at least --sched-period has to be specified. See sched(7)\nfor more details.\n",
                    "flag": "-d",
                    "long": "--deadline"
                }
            ]
        },
        "SCHEDULING OPTIONS": {
            "content": "",
            "subsections": [
                {
                    "name": "-T --sched-runtime",
                    "content": "Specifies runtime parameter for SCHEDDEADLINE policy (Linux-specific).\n",
                    "flag": "-T",
                    "long": "--sched-runtime"
                },
                {
                    "name": "-P --sched-period",
                    "content": "Specifies period parameter for SCHEDDEADLINE policy (Linux-specific).\n",
                    "flag": "-P",
                    "long": "--sched-period"
                },
                {
                    "name": "-D --sched-deadline",
                    "content": "Specifies deadline parameter for SCHEDDEADLINE policy (Linux-specific).\n",
                    "flag": "-D",
                    "long": "--sched-deadline"
                },
                {
                    "name": "-R --reset-on-fork",
                    "content": "Use SCHEDRESETONFORK or SCHEDFLAGRESETONFORK flag. Linux-specific, supported since\n2.6.31.\n\nEach thread has a reset-on-fork scheduling flag. When this flag is set, children created by\nfork(2) do not inherit privileged scheduling policies. After the reset-on-fork flag has been\nenabled, it can be reset only if the thread has the CAPSYSNICE capability. This flag is\ndisabled in child processes created by fork(2).\n\nMore precisely, if the reset-on-fork flag is set, the following rules apply for subsequently\ncreated children:\n\n•   If the calling thread has a scheduling policy of SCHEDFIFO or SCHEDRR, the policy is\nreset to SCHEDOTHER in child processes.\n\n•   If the calling process has a negative nice value, the nice value is reset to zero in\nchild processes.\n",
                    "flag": "-R",
                    "long": "--reset-on-fork"
                }
            ]
        },
        "OPTIONS": {
            "content": "",
            "subsections": [
                {
                    "name": "-a --all-tasks",
                    "content": "Set or retrieve the scheduling attributes of all the tasks (threads) for a given PID.\n",
                    "flag": "-a",
                    "long": "--all-tasks"
                },
                {
                    "name": "-m --max",
                    "content": "Show minimum and maximum valid priorities, then exit.\n",
                    "flag": "-m",
                    "long": "--max"
                },
                {
                    "name": "-p --pid",
                    "content": "Operate on an existing PID and do not launch a new task.\n",
                    "flag": "-p",
                    "long": "--pid"
                },
                {
                    "name": "-v --verbose",
                    "content": "Show status information.\n",
                    "flag": "-v",
                    "long": "--verbose"
                },
                {
                    "name": "-V --version",
                    "content": "Display version information and exit.\n",
                    "flag": "-V",
                    "long": "--version"
                },
                {
                    "name": "-h --help",
                    "content": "Display help text and exit.\n",
                    "flag": "-h",
                    "long": "--help"
                }
            ]
        },
        "USAGE": {
            "content": "The default behavior is to run a new command:\nchrt priority command [arguments]\n\nYou can also retrieve the real-time attributes of an existing task:\nchrt -p PID\n\nOr set them:\nchrt -r -p priority PID\n",
            "subsections": []
        },
        "PERMISSIONS": {
            "content": "A user must possess CAPSYSNICE to change the scheduling attributes of a process. Any user\ncan retrieve the scheduling information.\n",
            "subsections": []
        },
        "NOTES": {
            "content": "Only SCHEDFIFO, SCHEDOTHER and SCHEDRR are part of POSIX 1003.1b Process Scheduling. The\nother scheduling attributes may be ignored on some systems.\n\nLinux' default scheduling policy is SCHEDOTHER.\n",
            "subsections": []
        },
        "AUTHORS": {
            "content": "Robert Love <rml@tech9.net>, Karel Zak <kzak@redhat.com>\n",
            "subsections": []
        },
        "SEE ALSO": {
            "content": "nice(1), renice(1), taskset(1), sched(7)\n\nSee schedsetscheduler(2) for a description of the Linux scheduling scheme.\n",
            "subsections": []
        },
        "REPORTING BUGS": {
            "content": "For bug reports, use the issue tracker at https://github.com/karelzak/util-linux/issues.\n",
            "subsections": []
        },
        "AVAILABILITY": {
            "content": "The chrt command is part of the util-linux package which can be downloaded from Linux Kernel\nArchive <https://www.kernel.org/pub/linux/utils/util-linux/>.\n\n\n\nutil-linux 2.37.2                            2021-06-02                                      CHRT(1)",
            "subsections": []
        }
    },
    "summary": "chrt - manipulate the real-time attributes of a process",
    "flags": [
        {
            "flag": "-a",
            "long": "--all-tasks",
            "arg": null,
            "description": "Set or retrieve the scheduling attributes of all the tasks (threads) for a given PID."
        },
        {
            "flag": "-m",
            "long": "--max",
            "arg": null,
            "description": "Show minimum and maximum valid priorities, then exit."
        },
        {
            "flag": "-p",
            "long": "--pid",
            "arg": null,
            "description": "Operate on an existing PID and do not launch a new task."
        },
        {
            "flag": "-v",
            "long": "--verbose",
            "arg": null,
            "description": "Show status information."
        },
        {
            "flag": "-V",
            "long": "--version",
            "arg": null,
            "description": "Display version information and exit."
        },
        {
            "flag": "-h",
            "long": "--help",
            "arg": null,
            "description": "Display help text and exit."
        }
    ],
    "examples": [],
    "see_also": [
        {
            "name": "nice",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/nice/1/json"
        },
        {
            "name": "renice",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/renice/1/json"
        },
        {
            "name": "taskset",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/taskset/1/json"
        },
        {
            "name": "sched",
            "section": "7",
            "url": "https://www.chedong.com/phpMan.php/man/sched/7/json"
        },
        {
            "name": "schedsetscheduler",
            "section": "2",
            "url": "https://www.chedong.com/phpMan.php/man/schedsetscheduler/2/json"
        }
    ],
    "tldr": {
        "source": "official",
        "description": "Manipulate the real-time attributes of a process.",
        "examples": [
            {
                "description": "Display attributes of a process",
                "command": "chrt {{-p|--pid}} {{pid}}"
            },
            {
                "description": "Display attributes of all threads of a process",
                "command": "chrt {{-a|--all-tasks}} {{-p|--pid}} {{pid}}"
            },
            {
                "description": "Display the min/max priority values that can be used with `chrt`",
                "command": "chrt {{-m|--max}}"
            },
            {
                "description": "Set the scheduling priority of a process",
                "command": "chrt {{-p|--pid}} {{priority}} {{pid}}"
            },
            {
                "description": "Set the scheduling policy of a process",
                "command": "chrt --{{deadline|idle|batch|rr|fifo|other}} {{-p|--pid}} {{priority}} {{pid}}"
            }
        ]
    }
}