Event Trace Tool
TargetOS Kernel Awareness for CrossStep
image of screen capture for an enlarged view.
Horizontal axis: Time
Vertical axis: Names of the tasks and interrupt service routines which have events in the log buffer
Features and Definitions of TargetOS Event Trace:
When kernel event logging is enabled, information about the event is written to a circular buffer on the target every time a kernel event occurs. Kernel events
are: (1) service routine calls, (2) context switches, and (3) interrupts. The captured
information includes a time stamp and, in the case of a service routine call, the value of every parameter.
When the "Trace" command from the CrossStep "TargetOS" menu is given, the information in the log buffer is uploaded from the target and displayed in a graph. Time is displayed on the horizontal axis. The names of the tasks and interrupt service routines that have associated events in the log buffer are listed on the vertical axis.
The various events are plotted along the graph. Service routine events are labeled
with the routine name and the value of each parameter. The horizontal bars associated with each task are color coded to indicate the task state at each point along the timeline. At any time, only one task is shown in green. This indicates the running
The left and right arrow keys are used to pan the display left and right. The up and
down arrow keys are used to zoom in and out. The graph is very responsive to the arrow keys. It is sometimes helpful to zoom out for the big picture before finding an area to zoom in for greater detail.
The kernel event display is a great debugging aid. However, event logging does add some overhead to the kernel. When not debugging, event logging can be disabled at compile-time by defining the symbol OS_LOGGING in "kernelp.h" as FALSE.