SCHEDCTL(8)

SCHEDCTL(8) | System Manager's Manual | SCHEDCTL(8)

# NAME

`schedctl` — control scheduling of processes and threads

# SYNOPSIS

`schedctl` | [`-A` cpus] [`-C` class] [`-P` pri] [`-t` lid] `-p` pid | command

# DESCRIPTION

The `schedctl` command can be used to control the scheduling of processes and threads. It also returns information about the current scheduling parameters of the process or thread. Only the super-user may change the scheduling parameters. `schedctl` can also be used to start a new command using the specified parameters.

Available options:

`-A` cpus
  Set of the processors on which process or thread should run, that is, affinity. Processors are defined as numbers (starting from zero) and separated by commas. A value of -1 is used to unset the affinity.
`-C` class
  Scheduling class (policy), one of:
  `SCHED_OTHER`
    Time-sharing (TS) scheduling policy. The default policy in NetBSD.
  `SCHED_FIFO`
    First in, first out (FIFO) scheduling policy.
  `SCHED_RR`
    Round-robin scheduling policy.
`-P` pri
  Priority for the process or thread. Value should be in the range from `SCHED_PRI_MIN` (0) to `SCHED_PRI_MAX` (63). Setting of priority for the process or thread running at `SCHED_OTHER` policy is not allowed.
`-p` pid
  The target process which will be affected. If the process has more than one thread, all of them will be affected.

  If `-p` is not given, a command to execute must be given on the command line.

`-t` lid
  Thread in the specified process. If specified, only this thread in the process will be affected. May only be specified if `-p` is also given.

# EXAMPLES

Show scheduling information about the process whose ID is “123”:

    # schedctl -p 123

Set the affinity to CPU 0 and CPU 1, policy to `SCHED_RR`, and priority to 63 for thread whose ID is “1” in process whose ID is “123”:

    # schedctl -p 123 -t 1 -A 0,1 -C SCHED_RR -P 63

Run the top(1) command with real-time priority:

    # schedctl -C SCHED_FIFO top

# SEE ALSO

nice(1), getpriority(2), setpriority(2), psrset(8), renice(8)

# HISTORY

The `schedctl` command first appeared in NetBSD 5.0.

March 21, 2011 | NetBSD 11.0