ACM Home Page
Please provide us with feedback. Feedback
Can self-healing software cope with loitering?
Full text PdfPdf (259 KB)
Source Foundations of Software Engineering archive
Fourth international workshop on Software quality assurance: in conjunction with the 6th ESEC/FSE joint meeting table of contents
Dubrovnik, Croatia
SESSION: Self-healing software table of contents
Pages: 1 - 8  
Year of Publication: 2007
ISBN:978-1-59593-724-7
Authors
Maayan Goldstein  IBM Haifa Research Lab
Onn Shehory  IBM Haifa Research Lab
Yaron Weinsberg  IBM Haifa Research Lab
Sponsors
SIGSOFT: ACM Special Interest Group on Software Engineering
CEPIS : The Council of European Professional Informatics Societies
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 44,   Citation Count: 3
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1295074.1295076
What is a DOI?

ABSTRACT

Garbage collectors automatically free memory previously allocated by applications. Generally, they discard unreachable objects from memory, leaving reachable objects intact. However, object reachability does not necessarily imply usability, as an object may be obsolete and still reachable. Such objects are usually referred to as loitering objects. Loitering objects introduce a form of memory leak in a Java application. Predicting, tracing and eliminating loitering objects is a difficult problem. In this paper we address this problem. We present a self-healing approach for dealing with loitering objects. Specifically, the paper proposes an algorithm that can be integrated within the Java garbage collector. The algorithm prevents memory leaks resulting from loitering objects by "paging" suspected live objects to disk and reloading them if they are required. As a proof-of-concept, we have implemented and validated the algorithm for the Java Virtual Machine. This could be a first step towards genuine self-healing of memory management problems.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Panacea-towards a self-healing development framework. In <u>Proceedings of the 10th IFIP/IEEE international symposium on Integrated Network Management, Munich</u>, Germany, 2007.
2
 
3
 
4
5
6
 
7
B. Goetz. Garbage collection and performance. http://www-128.ibm.com/developerworks/java/library/j-jtp01274.html, 2004.
 
8
B. Goetz. Plugging memory leaks with soft references. http://www-128.ibm.com/developerworks/java/library/j-jtp01246.html, 2005.
 
9
B. Goetz. Plugging memory leaks with weak references. http://www-128.ibm.com/developerworks/java/library/j-jtp11225.html/, 2005.
 
10
 
11
J. Patrick. Handling memory leaks in Java programs. www.ibm.com/developerworks/java/library/j-leaks/, 2001.
 
12
M. Pawlan. Reference Objects and Garbage Collection. http://java.sun.com/developer/technicalArticles/ALT/RefObj/, 1998.
 
13
Sun. Jconsole - Java Monitoring and Management Console. http://java.sun.com/j2se/1.5.0/docs/tooldocs/share/jconsole.html, 2007.
 
14
 
15
JDK Monitoring and Troubleshooting Tools. http://java.sun.com/javase/6/docs/technotes/tools/, 2007.
 
16
JProbe. http://javaperformancetuning.com/tools/jprobe, 2003.


Collaborative Colleagues:
Maayan Goldstein: colleagues
Onn Shehory: colleagues
Yaron Weinsberg: colleagues