Search NASAโŒ• Search

NASA NTRS ยท 20170012348

Command and Control Software Development Memory Management

Abstract

This internship was initially meant to cover the implementation of unit test automation for a NASA ground control project. As is often the case with large development projects, the scope and breadth of the internship changed. Instead, the internship focused on finding and correcting memory leaks and errors as reported by a COTS software product meant to track such issues. Memory leaks come in many different flavors and some of them are more benign than others. On the extreme end a program might be dynamically allocating memory and not correctly deallocating it when it is no longer in use. This is called a direct memory leak and in the worst case can use all the available memory and crash the program. If the leaks are small they may simply slow the program down which, in a safety critical system (a system for which a failure or design error can cause a risk to human life), is still unacceptable. The ground control system is managed in smaller sub-teams, referred to as CSCIs. The CSCI that this internship focused on is responsible for monitoring the health and status of the system. This team's software had several methods/modules that were leaking significant amounts of memory. Since most of the code in this system is safety-critical, correcting memory leaks is a necessity.

Explore related subjects

Keep this discovery

Explore connections, maps & timelines

BibTeXRIS

Joseph, Austin Pope. 2017-11-14. Command and Control Software Development Memory Management. https://ntrs.nasa.gov/citations/20170012348

Cite the original work for its findings. Save a collection to share your selection of sources.