Authors: Mabel Mary Joy; Franz Josef Rammig
Addresses: C-Lab, University of Paderborn, Fürstenallee 11, 33102 Paderborn, Germany ' Heinz Nixdorf Institute, University of Paderborn, Fürstenallee 11, 33102 Paderborn, Germany
Abstract: As embedded software becomes complex and time to production needs to be minimized, early fixing of flaws in a software design is important. Memory leaks are the most important memory-related problems commonly occurring in embedded software development. We propose a novel hybrid automated memory leak detection approach for soft real-time embedded system software. Our approach combines static and dynamic methodologies to overcome their individual limitations. The static phase generates potential memory leak warnings with the help of source code annotation and control flow graphs. The dynamic phase involves simulation of abstracted memory behaviour with data collected in an abstract memory model (AMM). Actual leaks are determined from the potential leak warnings generated in the static phase. The dynamic simulation phase makes our approach faster and enables early phase leak detection. Our approach is platform independent and evaluation shows that it is more accurate than existing tools.
Keywords: hybrid memory leak detection; soft real-time systems; abstract memory model; AMM; simulation; source code annotation; control flow graphs; data dependency; memory leak ranking; memory leak density; memory leaks; embedded systems; embedded software; software development; software errors.
International Journal of Embedded Systems, 2017 Vol.9 No.1, pp.61 - 73
Received: 02 Jan 2015
Accepted: 23 Apr 2015
Published online: 20 Jan 2017 *