The latest development version of this page may be more current than this released 1.14.0 version.
CONFIG_NUM_PREEMPT_PRIORITIES

Number of preemptible priorities

Type: int

Help

Number of preemptible priorities available in the system. Gives access to priorities 0 to CONFIG_NUM_PREEMPT_PRIORITIES - 1.

This can be set to 0 to disable preemptible scheduling.

Each priority requires an extra 8 bytes of RAM. Each set of 32 extra total priorities require an extra 4 bytes and add one possible iteration to loops that search for the next thread to run.

The total number of priorities is

NUM_COOP_PRIORITIES + NUM_PREEMPT_PRIORITIES + 1

The extra one is for the idle thread, which must run at the lowest priority, and be the only thread at that priority.

Defaults

Kconfig definition

At kernel/Kconfig:59

Included via Kconfig:10Kconfig.zephyr:31

Menu path: (top menu) → General Kernel Options

config NUM_PREEMPT_PRIORITIES
    int
    prompt "Number of preemptible priorities" if MULTITHREADING
    range 0 128
    default 0 if !MULTITHREADING
    default 15
    help
      Number of preemptible priorities available in the system. Gives access
      to priorities 0 to CONFIG_NUM_PREEMPT_PRIORITIES - 1.

      This can be set to 0 to disable preemptible scheduling.

      Each priority requires an extra 8 bytes of RAM. Each set of 32 extra
      total priorities require an extra 4 bytes and add one possible
      iteration to loops that search for the next thread to run.

      The total number of priorities is

       NUM_COOP_PRIORITIES + NUM_PREEMPT_PRIORITIES + 1

      The extra one is for the idle thread, which must run at the lowest
      priority, and be the only thread at that priority.

(Definitions include propagated dependencies, including from if’s and menus.)