Title :
An effective method to detect software memory leakage leveraged from neuroscience principles governing human memory behavior
Author :
Wang, Xiangrong ; Xu, Jun ; Pham, Christopher H.
Abstract :
Software memory leakage accounts for many dynamic system problems ranging from minor performance deterioration to major system crash due to low memory, security exploitation or other side effects. General purpose commercial static and dynamic memory leak analysis tools are available for common operating systems. However, these tools normally produce high noise ratio of warning messages that require many human hours to review and eliminate false-positive alarms. In-house tools for proprietary platforms with special memory architectures also face the same limitation. Human memory on the parallel path has been studied by neuroscientists and well documented along with the governing behavioral mathematic expressions. Some studies from neuroscience inspired us towards a new approach to resolve the software memory leak issues that were occurring in our proprietary operating system. The results of our study and experiment not only allowed us to create a method to accurately detect memory leaks as a starting point, but also laid out a roadmap for future work in this area by applying the neuroscience findings into computer software to detect and control the system resources. We hope our findings and experience will help others to decrease the effort of fighting against system memory leak, whether starting from scratch, or as a reference to improve the existing tools to reduce the reporting noise ratio. In this paper, we will walk through our mapping of Cue, Recognition and Recall used in Kahana´s neuroscience method [2000] to the similar memory elements of our target operating system, and how we applied Yule´s Q equation to accurately pinpoint the memory leak in our source code and how we continuously fine tune the noise threshold. Our immediate road map shows a mathematic model to predict the system memory resource behavior and how we will apply it to our memory leak detection tool to help prolong system availability.
Keywords :
operating system kernels; program diagnostics; storage management; system recovery; human memory behavior; neuroscience principle; operating system; software memory leakage; system resource; Computer crashes; Humans; Leak detection; Mathematics; Memory architecture; Neuroscience; Operating systems; Security; Signal to noise ratio; Software performance;
Conference_Titel :
Software Reliability Engineering, 2004. ISSRE 2004. 15th International Symposium on
Print_ISBN :
0-7695-2215-7
DOI :
10.1109/ISSRE.2004.5