

An insufficient queue size will be caught by osRt圎rrorNotify with error code osRt圎rrorISRQueueOverflow. The required size of this buffer depends on the number of functions that are called within the interrupt handler. The scheduler is activated immediately after the IRQ handler has finished its execution to process the requests stored to the FIFO queue buffer. The RTX functions ( Calls from Interrupt Service Routines), when called from and interrupt handler, store the request type and optional parameter to the ISR FIFO queue buffer to be processed later, after the interrupt handler exits. The time slice period is configured (in RTX timer ticks) with the #define OS_ROBIN_TIMEOUT. Round-Robin multitasking is controlled with the #define OS_ROBIN_ENABLE. If no other thread with the same priority is ready to run, the current running thread resumes it execution. Then, RTX switches to the next thread that is in READY state and has the same priority. In other words, threads execute for the duration of their time slice (unless a thread's time slice is given up). If there is another thread ready with the same priority, then the system switches to that thread and the tick is preloaded with timeout again.

Threads are not really executed concurrently, but are scheduled where the available CPU time is divided into time slices and RTX5 assigns a time slice to each thread. Round-robin allows quasi-parallel execution of several threads of the same priority. RTX5 may be configured to use round-robin multitasking thread switching.

Value range is entries in multiples of 4.Įnables object memory usage counters to evaluate the maximum memory pool requirements individually for each RTOS object type. RTOS Functions called from ISR store requests to this buffer. Default: 1000Hz = 1ms period.ĭefines how long a thread will execute before a thread switch. Value range is bytes, in multiples of 8 bytes.ĭefines base time unit for delays and timeouts in Hz. The picture below shows the µVision Configuration Wizard view in MDK:ĭefines the combined global dynamic memory size for the Global Memory Pool. Depending on the development tool, the annotations might lead to a more user-friendly graphical representation of the settings. Refer to Pack - Configuration Wizard Annotations for details. The configuration file uses Configuration Wizard Annotations. Both functions can simply be overwritten with a customized behavior by redefining them as part of the user code. The file "RTX_Config.c" contains default implementations of the functions osRtxIdleThread and osRt圎rrorNotify.

