MULTI EventAnalyzer for ThreadX
The Green Hills Software MULTI EventAnalyzer helps
programmers understand the complex interaction of resources in a
ThreadX system by providing a graphical representation of system
activities. As a result, system events occurring within microseconds
can easily be isolated and analyzed. This system analysis tool effectively
gives programmers the ability to stop time in order to scrutinize
system behavior.
Within a real-time operating system, complex interactions
take place at a much higher rate than can be analyzed using common
source-level debuggers and profilers. Event logging instrumentation
built into the ThreadX kernel allows the system to record information
about itself (such as service calls, context switches, and interrupts).
This information is then transferred to the host system, where you
can use the EventAnalyzer Graphical User Interface (GUI, pictured
below) to view it and to analyze system activities.

The EventAnalyzer GUI provides details about the
status of each thread and about events related to that thread. The
GUI also includes a variety of control features that enable you
to collect meaningful event data with minimal intrusion into the
target system. In addition, the instrumentation inside of ThreadX
is done with in-line macros for the lowest possible overhead.

The EventAnalyzer reads the data file as a series
of events and states. The various threads on the target system can
alternate between states of activity at any given moment. System
events occur depending on the processing needs of the program and
of the system. With event logging enabled, the ThreadX kernel logs
these events and status changes as they occur.
Additionally, you can define the event logging
filter to specify the types of events the system will record. This
allows you to record only those events required for meaningful analysis.
Each event enabled for logging contains additional information that
can be obtained by clicking on the event icon. An example of additional
information about a particular queue receive call is shown below:

In general, ThreadX system events can be characterized
as thread context switches, exceptions and interrupts, kernel calls,
or user-defined events. The EventAnalyzer contains a graphical representation
and icons for each event in ThreadX and each is defined in the EventAnalyzer's
legend. A portion of the EventAnalyzer's legend is shown below:

The MULTI EventAnalyzer for ThreadX is available
for all MULTI and ThreadX support packages.
|