C Microkernel Realtime eXecutive
Realtime Operating System for Cortex-M based microcontrollers
 
Loading...
Searching...
No Matches
Kernel runtime configuration

Description

Compile-time configuration of kernel runtime parameters.

Some kernel properties can be configured statically at compile-time. For some of them it is the only way to configure them at all.

Macros

#define KERNEL_HAS_MEMORY_PROTECTION
 This turns on memory protection globally.
 
#define MPU_STATE_SIZE   7
 How many MPU regions are saved per thread.
 
#define MPU_HOSTED_STATE_SIZE   4
 How many MPU regions are always used based on in which process thread is hosted.
 
#define OS_TASK_MPU_REGIONS   5
 How many MPU regions can process define.
 
#define OS_STACK_SIZE   1024
 How big stack is? In bytes.
 
#define OS_THREADS   8
 How many threads can exist.
 
#define OS_STACKS   8
 How many stacks can be allocated.
 
#define OS_PROCESSES   8
 How many processes can be allocated.
 
#define SLEEPERS_MAX   (2 * OS_THREADS)
 How many sleeping threads can exist.
 

Macro Definition Documentation

◆ KERNEL_HAS_MEMORY_PROTECTION

#define KERNEL_HAS_MEMORY_PROTECTION

This turns on memory protection globally.

This is a partially obsolete and unsupported option. CMRX does not support running without memory protection activated as certain mechanism in the kernel are directly expecting MPU will intervene on specific bad behavior of the application.

◆ MPU_HOSTED_STATE_SIZE

#define MPU_HOSTED_STATE_SIZE   4

How many MPU regions are always used based on in which process thread is hosted.

◆ MPU_STATE_SIZE

#define MPU_STATE_SIZE   7

How many MPU regions are saved per thread.

◆ OS_PROCESSES

#define OS_PROCESSES   8

How many processes can be allocated.

◆ OS_STACK_SIZE

#define OS_STACK_SIZE   1024

How big stack is? In bytes.

◆ OS_STACKS

#define OS_STACKS   8

How many stacks can be allocated.

◆ OS_TASK_MPU_REGIONS

#define OS_TASK_MPU_REGIONS   5

How many MPU regions can process define.

◆ OS_THREADS

#define OS_THREADS   8

How many threads can exist.

◆ SLEEPERS_MAX

#define SLEEPERS_MAX   (2 * OS_THREADS)

How many sleeping threads can exist.