Ozone — OS Aware Debugging
Get information from the RTOS in your system.
- Get information about running tasks
- Examine call stack of any task
- embOS and FreeRTOS awareness included
- Plugin SDK for any RTOS
Get System Insight
Ozone does not only analyse the run-time performance. You can also get detailed information about the current state of your system when it is halted.
With its RTOS awareness Ozone provides you with information about the OS of your application - In which task did the system halt? With are other tasks currently doing? How much stack does each task use? Ozone comes with RTOS awareness plugins for embOS and FreeRTOS. A plugin SDK is available for you to add awareness for your OS.
Enable RTOS Awareness
Ozone ships with ready-to-use RTOS Awareness for embOS and FreeRTOS.
After loading an application which uses on of these RTOSes, simply call Project.SetOSPlugin("embosPlugin"); or Project.SetOSPlugin("freertosPlugin"); from the Console or your project file to enable the OS awareness. Now the Tasks Window is available at View -> embOS -> Tasks / view -> FreeRTOS -> Tasks.
When RTOS Awareness is enabled, Ozone can show an additional Tasks Window. When halted in a debug session, the Tasks Window lists all tasks which are currently available in the system and shows their state.
For each task you can get the task name, its priority, information about the task stack, and the status of the tasks. Usually one task is running, while the other ones are waiting or blocked. Additional information show the run count and number of events for the tasks.
The currently running task is also marked by an indicator in the Tasks Window.
Current State of any Task
Usually the Call Stack, Registers Window, and Local Data Window display information about the state where the system is actually halted. With RTOS awareness you can also get this information about other tasks in the system.
Simply click on a Task in the list and you will see the window contents updating. Now you can get the call stack of the selected task and even check Local Data and register values for the called functions.