Return to search

Detecting Java Memory Leak by Time Series Analysis

A memory leak is a common software vulnerability that will lead to performance degradation of the software or crash or both. A Memory leak is one typical cause of software aging. The phenomenon of memory leaks usually occurs in C/C++ because programmers need to manage memory by themselves when programs run. However, many think that Java does not suffer from memory leaks since Java provides automatic garbage collection. Actually, Java programs will run out of memory unexpectedly after executing for a long time. The reason for Java memory leaks is that reachable objects are no longer needed. These objects should be reclaimed but they can¡¦t because they are still referenced.
This thesis introduces a method for filtering the leaked objects in Java memory leak programs. First, we monitor the heap growth after each full garbage collection and the
numbers of full garbage collection to identify programs that might have potential memory management problems. Second, we periodically keep track of growth trend of each object of problematic programs and filter out the suspected one by time series analysis. Finally, we execute the program blocks that include objects that we find out to see if the program will run out of memory eventually. The method has been implemented and has been verified successful by four Java memory leak programs.

Identiferoai:union.ndltd.org:NSYSU/oai:NSYSU:etd-0723107-154522
Date23 July 2007
CreatorsHuang, Chih-Hung
ContributorsChing-Seh Wu, Bing-Chiang Jeng, Chih-Ping Chu, Chen Chia Mei
PublisherNSYSU
Source SetsNSYSU Electronic Thesis and Dissertation Archive
LanguageCholon
Detected LanguageEnglish
Typetext
Formatapplication/pdf
Sourcehttp://etd.lib.nsysu.edu.tw/ETD-db/ETD-search/view_etd?URN=etd-0723107-154522
Rightscampus_withheld, Copyright information available at source archive

Page generated in 0.0018 seconds