The QNX System Analysis Toolkit (SAT) consists of the following main components:
- Instrumented Kernel
- The Instrumented Kernel is an integral part of the SAT. In addition to being a fully functional QNX RTOS microkernel, it also intercepts time events and passes them to the tracelogger daemon for further processing.
- The tracelogger utility
- The tracelogger daemon receives events from the Instrumented Kernel and saves them to a file/device for later analysis.
- The traceprinter utility
- The traceprinter utility displays the trace event file in a readable form. Users can also modify the traceprinter source as a basis for their own custom programs.
- Trace Control Interface
- The SAT trace API uses a single TraceEvent() kernel call. The TraceEvent() call has over 30 different execution modes that enable the user to:
- create internal trace buffers
- set up filters
- control the tracing process
- insert user defined events
- The Traceparser Library
- The Traceparser library provides an API for parsing and interpreting the trace events that are stored in the event file. The library simplifies the parsing and interpretation process by allowing the user to easily:
- set up callback functions and associations for each event
- retrieve header and system information from the trace event file
- debug and control the parsing process.
- Examples
- You'll find numerous sample code listings (and source) that will take you from gathering a simple set of events through to sophisticated filtering and inserting your own events. You can modify the source and use snippets of it to more quickly create your own applications.
- Source code
- You have full source code for all of the following:
- the tracelogger utility
- the traceprinter utility
- the traceparser library
- sample test programs
- tutorial example programs