| The CLOSER: automating resource management in java |
| Full text |
Pdf
(329 KB)
|
Source
|
International Symposium on Memory Management
archive
Proceedings of the 7th international symposium on Memory management
table of contents
Tucson, AZ, USA
SESSION: Garbage collection & resource management
table of contents
Pages 1-10
Year of Publication: 2008
ISBN:978-1-60558-134-7
|
|
Authors
|
|
Isil Dillig
|
Stanford University, Stanford, CA, USA
|
|
Thomas Dillig
|
Stanford University, Stanford, CA, USA
|
|
Eran Yahav
|
IBM T.J. Watson Research Center, Hawthorne, USA
|
|
Satish Chandra
|
IBM T.J. Watson Research Center, Hawthorne, USA
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 5, Downloads (12 Months): 59, Citation Count: 1
|
|
|
ABSTRACT
While automatic garbage collection has relieved programmers from manual memory management in Java-like languages, managing resources remains a considerable burden and a source of performance problems. In this paper, we present a novel technique for automatic resource management based on static approximation of resource lifetimes. Our source-to-source transformation tool, CLOSER, automatically transforms program code to guarantee that resources are properly disposed and handles arbitrary resource usage patterns. CLOSER generates code for directly disposing any resource whose lifetime can be statically determined; when this is not possible, CLOSER inserts conditional disposal code based on interest-reference counts that identify when the resource can be safely disposed. The programmer is only required to identify which types should be treated as resources, and what method to invoke to dispose each such resource. We successfully applied CLOSER on a moderate-sized graphics application that requires complex reasoning for resource management.
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
|
|
| |
2
|
Bug reports for Eclipse projects. See bugs.eclipse.org/bugs.
|
| |
3
|
Eclipse Java Development Tools. See www.eclipse.org.
|
| |
4
|
The using statement. See C# Language Specification, msdn.microsoft.com.
|
| |
5
|
Watson Libraries for Program Analysis (WALA). Available at wala.sf.net.
|
 |
6
|
Jonathan Aldrich , Valentin Kostadinov , Craig Chambers, Alias annotations for program understanding, Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, November 04-08, 2002, Seattle, Washington, USA
|
 |
7
|
Alexander Aiken , Manuel Fähndrich , Raph Levien, Better static memory management: improving region-based analysis of higher-order languages, Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation, p.174-185, June 18-21, 1995, La Jolla, California, United States
|
 |
8
|
Chris Allan , Pavel Avgustinov , Aske Simon Christensen , Laurie Hendren , Sascha Kuzins , Ondřej Lhoták , Oege de Moor , Damien Sereni , Ganesh Sittampalam , Julian Tibble, Adding trace matching with free variables to AspectJ, Proceedings of the 20th annual ACM SIGPLAN conference on Object oriented programming, systems, languages, and applications, October 16-20, 2005, San Diego, CA, USA
|
 |
9
|
Bruno Blanchet, Escape analysis for object-oriented languages: application to Java, Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, p.20-34, November 01-05, 1999, Denver, Colorado, United States
|
 |
10
|
|
 |
11
|
|
 |
12
|
|
 |
13
|
|
 |
14
|
|
 |
15
|
Stephen Fink , Eran Yahav , Nurit Dor , G. Ramalingam , Emmanuel Geay, Effective typestate verification in the presence of aliasing, Proceedings of the 2006 international symposium on Software testing and analysis, July 17-20, 2006, Portland, Maine, USA
[doi> 10.1145/1146238.1146254]
|
 |
16
|
|
 |
17
|
|
 |
18
|
|
 |
19
|
|
| |
20
|
Livshits, V. B. Turning Eclipse against itself: Finding bugs in Eclipse code using lightweight static analysis. Eclipsecon '05 Research Exchange, Mar. 2005.
|
 |
21
|
|
| |
22
|
Shaham, R., Yahav, E., Kolodner, E. K., and Sagiv, S. Establishing local temporal heap safety properties with applications to compile-time memory management. In SAS (2003), R. Cousot, Ed., vol. 2694 of Lecture Notes in Computer Science, Springer, pp. 483--503.
|
 |
23
|
|
 |
24
|
Westley Weimer , George C. Necula, Finding and preventing run-time error handling mistakes, Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, October 24-28, 2004, Vancouver, BC, Canada
|
|