The Flight Software Memory Tracker (FMT) computer program is a collection of utility subprograms developed for use on the ground to track images of the flight software (FSW) in the computers aboard the Cassini spacecraft. [As used here, "images" signifies both (1) the memory load and updatable parameters in the spacecraft computers and (2) logically equivalent representations thereof.] FMT maintains a history of every FSW image aboard the spacecraft ("FSW image" for short), updating the ground copies of the images ("FMT images" for short) whenever the FSW images are updated. When FSW images are updated by uplink commands transmitted to the spacecraft, FMT can translate the commands into update data groups to be appended to FMT images. FMT images can also be updated by readout from spacecraft computer-memory addresses, which readout is performed in addition to normal telemetry downlink. FMT can also generate commands to update both FSW and FMT images at a specified time. The FMT images can be evaluated at any historic time, can be queried for history and statistics, and can be processed to obtain, for example, human-readable values of parameters in engineering units. FMT, which is written in Java, can be ported to computers, with various architectures and operating systems, that are equipped with Java interpreters.

This program was written by Edwin Kan, Allan Wax, and Hal Uffelman of Caltech for NASA's Jet Propulsion Laboratory. For further information, access the Technical Support Package (TSP) free on-line at www.techbriefs.com under the Computer Software category, or circle no. 147on the TSP Order Card in this issue to receive a copy by mail ($5 charge).

NPO-20200



This Brief includes a Technical Support Package (TSP).
Document cover
Software for tracking the performance of other software

(reference NPO20200) is currently available for download from the TSP library.

Don't have an account?



Magazine cover
NASA Tech Briefs Magazine

This article first appeared in the February, 1998 issue of NASA Tech Briefs Magazine (Vol. 22 No. 2).

Read more articles from the archives here.


Overview

The document discusses the Flight Software Memory Tracker (FMT), a tool developed by NASA's Jet Propulsion Laboratory (JPL) for tracking and managing the performance of flight software, particularly for the Cassini spacecraft mission. The FMT serves as a powerful ground analysis tool, enabling efficient monitoring and updating of software images used in space missions.

The FMT is implemented in Java, leveraging its extensive libraries, such as java.lang, java.util, and java.io, which simplify the certification process for the software. The design includes 23 utilities, or programs, that are executed in scripts to achieve high-level objectives. These utilities include functions for converting, merging, and querying software data, among others. The Java implementation is noted for its small, simple, and safe characteristics, facilitating code reuse across different projects and computing platforms.

The document highlights the dynamic memory management capabilities of Java, which allows for the creation and deletion of numerous objects (FMTGroupDataElements) without the programmer needing to manage memory manually. This feature reduces complexity and debugging efforts. Additionally, the use of Java's exception handling mechanisms helps in detecting errors and managing unusual conditions during data processing.

The FMT's architecture is designed to be modular, with a single package containing all related objects, which promotes organization and ease of maintenance. The document also emphasizes the importance of protection schemes within the code, utilizing public, protected, and private access modifiers to enhance security.

The FMT is positioned as a significant advancement in ground data systems for space missions, streamlining the process of software tracking and analysis. The document references various technical papers and requirements documents that outline the functional specifications and engineering design of the FMT, underscoring the collaborative effort behind its development.

In summary, the FMT represents a critical innovation in the management of flight software, combining Java's robust features with a well-structured design to support the complex needs of space missions. Its ability to adapt to different software architectures and computing environments makes it a valuable tool for future projects in aerospace engineering.