Tech Briefs

Sptrace

Sptrace is a general-purpose space utilization tracing system that is conceptually similar to the commercial “Purify” product used to detect leaks and other memory usage errors. It is designed to monitor space utilization in any sort of “heap,” i.e., a region of data storage on some device (nominally memory; possibly shared and possibly persistent) with a flat address space. This software can trace usage of shared and/or non-volatile storage in addition to private RAM (random access memory).

Sptrace is implemented as a set of C function calls that are invoked from within the software that is being examined. The function calls fall into two broad classes: (1) functions that are embedded within the heap management software [e.g., JPL’s SDR (Simple Data Recorder) and PSM (Personal Space Management) systems] to enable heap usage analysis by populating a virtual time-sequenced “log” of usage activity, and (2) reporting functions that are embedded within the application program whose behavior is suspect. For ease of use, these functions may be wrapped privately inside public functions offered by the heap management software. Sptrace can be used for VxWorks or RTEMS real-time systems as easily as for Linux or OS/X systems.

This work was done by Scott C. Burleigh of ACRO for NASA’s Jet Propulsion Laboratory.

This software is available for commercial licensing. Please contact Daniel Broderick of the California Institute of Technology at This email address is being protected from spambots. You need JavaScript enabled to view it. . NPO-41626

This Brief includes a Technical Support Package (TSP).

Sptrace (reference NPO-41626) is currently available for download from the TSP library.

Please Login at the top of the page to download.