Notice: We have migrated to GitLab launching 2024-05-01 see here: https://gitlab.rtems.org/

Changes between Version 10 and Version 11 of Developer/Tracing


Ignore:
Timestamp:
01/01/16 17:54:57 (8 years ago)
Author:
Ralph Holmes
Comment:

Fix spelling and/or grammar.

Legend:

Unmodified
Added
Removed
Modified
  • Developer/Tracing

    v10 v11  
    33[[TOC(Developer/Tracing , depth=2)]]
    44
    5 RTEMS Tracing support is an on target software based system that allows users and developers see what is happening in applications, 3rd party packages, or the RTEMS kernel itself in real-time.
     5RTEMS Tracing support is an on-target software-based system that allows users and developers see what is happening in applications, 3rd party packages, or the RTEMS kernel itself in real-time.
    66
    77Tracing a real-time system using just software is a complex process that involves a number of components on the host and in the target working together. Software based tracing is useful because it is portable across all architectures and board support packages  however tracing requires instrumenting the code, which means it is altered with the addition of code to log various events and records in real-time, and there is an execution overhead which changes the real-time profile of a system. If a user is mindful of these factors and understands the nature of the trace process these effects can be compensated for.
     
    2020The RTEMS Trace Linker takes the ELF files and libraries used to build a executable and performs a link that instruments the code so the functions a user is interested in generate suitable trace records. The user provides a configuration file that defines the trace set up. The instrumented code logs the trace data using the Capture Engine. This is a thread and SMP safe software module that takes trace records and filters the data in real-time based on trace enable records and triggers. A triggered system will log into buffers trace records that are enabled. The Capture Engine maintains a trace buffer per CPU to avoid locking overheads in SMP applications.
    2121
    22 The Capture Engine trace buffers are transferred to the host and fed into the [http://www.efficios.com/babeltrace Babletrace] tool with a suitable configuration generated by the RTEMS Trace Linker to generate CTF files. The CTF files can be viewed using tools such as [https://www.polarsys.org/solutions/tracecompass Trace Compass]. The RTEMS Trace Linker instruments the code with the event Ids that match the CTF configuration file so Babletrace can associate the records with the specific events.
     22The Capture Engine trace buffers are transferred to the host and fed into the [http://www.efficios.com/babeltrace Babeltrace] tool with a suitable configuration generated by the RTEMS Trace Linker to generate CTF files. The CTF files can be viewed using tools such as [https://www.polarsys.org/solutions/tracecompass Trace Compass]. The RTEMS Trace Linker instruments the code with the event Ids that match the CTF configuration file so Babletrace can associate the records with the specific events.
    2323
    2424The RTEMS Trace Linker can be configured to generate other trace output and can be used to generate custom logs for any specific purpose. For example you could create a trace log that is just an Id and timestamp so you can get a profile of the performance of you code.