Skip to end of metadata
Go to start of metadata

This section describes the application-specific configurations of the kernel, which are set at run-time.

Kernel Initialization

For information on the methods that can be used to initialize any Micrium product, please see Stacks Initialization Methods. To initialize the kernel, OSInit() must be called.

Optional Configurations

This section describes the configurations that are optional. If you do not set them in your application, the default configurations will apply.

The default values can be retrieved via the structure OS_InitCfgDflt. For examples of how to change the run-time configuration, see the Kernel Initialization page of the Kernel Programming Guide.

Note: These configurations must be set before you call the function OSInit().

Memory Segment

The kernel can allocate its internal task's stack and objects on a specific memory segment.

TypeFunction to callDefaultField from default configuration structure
MEM_SEG *OS_ConfigureMemSeg()The General-purpose heap ..MemSeg

Message Pool Size

The kernel can manage a variable number of messages used by both the message queues and the per-task message queues.

TypeFunction to callDefaultField from default configuration structure
OS_MSG_SIZEOS_ConfigureMsgPoolSize()The kernel will manage 100 messages..MsgPoolSize

Task Stack Limit

Some processors offer the ability to monitor the task's stack usage. This option sets the percentage to Full, at which point the processor must alert the application.

TypeFunction to callDefaultField from default configuration structure
CPU_STK_SIZEOS_ConfigureStkLimit()10% from Full is the limit..TaskStkLimit

Idle Task Stack

The kernel has an internal task that is used when no other tasks are ready. This option specifies the stack used by the Idle Task.

TypeFunction to callDefaultField from default configuration structure
OS_STACK_CFGOS_ConfigureIdleTaskStk()The Idle Task will use a 512 element stack allocated in the kernel memory segment..IdleTask

ISR Stack

If the processor allows it, a separate stack may be used for the ISRs. This option specifies the stack used by the ISRs.

TypeFunction to callDefaultField from default configuration structure
OS_STACK_CFG  OS_ConfigureISRStk()The ISRs will use a 256 element stack allocated in the kernel memory segment..ISR

Statistics Task

This option changes the Statistics Task's stack, priority, and rate of execution.

TypeFunction to callDefaultField from default configuration structure
OS_TASK_CFGOS_ConfigureStatTask()The Statistics Task will use a 256 element stack allocated in the kernel memory segment. It will run at rate of 10Hz with a priority of 3..StatTaskCfg

Tick Task

This option modifies the Tick Task's stack, priority, and rate of execution.

TypeFunction to callDefaultField from default configuration structure
OS_TASK_CFGOS_ConfigureTickTask()The Tick Task will use a 256 element stack allocated in the kernel memory segment. It will run at rate of 1000Hz with a priority of 1 ..TickTaskCfg

Timer Task

This option alters the Timer Management Task's stack, priority, and rate of execution.

TypeFunction to callDefaultField from default configuration structure
OS_TASK_CFGOS_ConfigureTmrTask()The Timer Management Task will use a 256 element stack allocated in the kernel memory segment. It will run at rate of 10Hz with a priority of 2 ..TmrTaskCfg
  • No labels