RTOS (Real time operating system) Object View
Overview
The RTOS Object View allows users to view various components of an RTOS while debugging their application.
Supported RTOSes and their supported object types
- Azure RTOS (ThreadX)
- Block pools
- Byte pools
- Event flags
- Mutexes
- Queues
- Semaphores
- Threads
- Timers
- FreeRTOS
- Queues
- Threads
- Zephyr
- Mailboxes
- Memory slabs
- Message queues
- Mutexes
- Pipes
- Queues
- Semaphores
- Stacks
- Threads
- Timers
Usage
Use the RTOS Object View to:
- Access memory locations of various objects.
- Access thread variables or various objects in the Watch view.
Use the arrow keys to select objects within the view. Use the Enter key to navigate to the linked content.
Configuring an embedded application for the RTOS view
The RTOS Object View will attempt to automatically display information, but setting certain build flags can allow the RTOS Object View to display additional details. The build flags are specific to the RTOS being used. The exact mechanism used to set these flags varies depending on the build system used by the project. Consult your RTOS and build system documentation for more details.
Azure RTOS (ThreadX)
All features should work by default.
FreeRTOS
- Thread base priority is only available if
configUSE_MUTEXES
is enabled. - Thread run count is only available if
configGENERATE_RUN_TIME_STATS
is enabled. - The end address of a thread's stack space is only available if
portSTACK_GROWTH
orconfigRECORD_STACK_HIGH_ADDRESS
are enabled. - The thread list will be retrieved faster if
configMAX_PRIORITIES
is set to the lowest possible value that still satisfies the application's requirements.
Zephyr
- All thread information is only available if
CONFIG_DEBUG_THREAD_INFO
is enabled. - Thread stack usage is only available if
CONFIG_INIT_STACKS
andCONFIG_THREAD_STACK_INFO
are enabled. - For all object types other than threads, information is only available if
CONFIG_TRACING
andCONFIG_TRACING_OBJECT_TRACKING
are enabled. - The maximum usage of a memory slab is only available if
CONFIG_MEM_SLAB_TRACE_MAX_UTILIZATION
is enabled. - The list of threads waiting on an object is only available if
CONFIG_WAITQ_SCALABLE
is disabled.