Fri 27 Aug 2021 04:00 - 04:10 - Dependability—Dependability Chair(s): Eunsuk Kang
A resource leak occurs when a program allocates a resource, such as a socket or file handle, but fails to deallocate it. Resource leaks cause resource starvation, slowdowns, and crashes. Previous techniques to prevent resource leaks are either unsound, imprecise, inapplicable to existing code, slow, or a combination of these.
Static detection of resource leaks requires checking that de-allocation methods are always invoked on relevant objects before they become unreachable. Our key insight is that leak detection can be reduced to an accumulation problem, a class of typestate problems amenable to sound and modular checking without the need for a heavyweight, whole-program alias analysis. The precision of an accumulation analysis can be improved by computing targeted aliasing information, and we augmented our baseline checker with three such novel techniques: a lightweight ownership transfer system; a specialized resource alias analysis; and a system to create a fresh obligation when a non-final resource field is updated.
Our approach occupies a unique slice of the design space: it is sound and runs relatively quickly (taking minutes on programs that a state-of-the-art approach took hours to analyze). We implemented our techniques for Java in an open-source tool called the Resource Leak Checker. The Resource Leak Checker revealed 49 real resource leaks in widely-deployed software. It scales well, has a manageable false positive rate (comparable to the high-confidence resource leak analysis built into the Eclipse IDE), and imposes only a small annotation burden (1/1500 LoC) for developers.
Thu 26 AugDisplayed time zone: Athens change
16:00 - 17:00 | Dependability—DependabilityIdeas, Visions and Reflections / Research Papers +12h Chair(s): Eunsuk Kang Carnegie Mellon University | ||
16:00 10mPaper | Lightweight and Modular Resource Leak Verification Research Papers Martin Kellogg University of Washington, Narges Shadab University of California at Riverside, Manu Sridharan University of California at Riverside, Michael D. Ernst University of Washington DOI | ||
16:10 10mPaper | JSISOLATE: Lightweight In-Browser JavaScript Isolation Research Papers DOI | ||
16:20 5mPaper | Software Robustness: A Survey, a Theory, and Prospects Ideas, Visions and Reflections Justyna Petke University College London, David Clark University College London, William B. Langdon University College London DOI | ||
16:25 5mPaper | Health of Smart Ecosystems Ideas, Visions and Reflections Noura El Moussa USI Lugano; Schaffhausen Institute of Technology, Davide Molinelli USI Lugano; Schaffhausen Institute of Technology, Mauro Pezze USI Lugano; Schaffhausen Institute of Technology, Martin Tappler TU Graz; Silicon Austria Labs DOI | ||
16:30 30mLive Q&A | Q&A (Dependability—Dependability) Research Papers |
Fri 27 AugDisplayed time zone: Athens change
04:00 - 05:00 | Dependability—DependabilityIdeas, Visions and Reflections / Research Papers Chair(s): Eunsuk Kang Carnegie Mellon University | ||
04:00 10mPaper | Lightweight and Modular Resource Leak Verification Research Papers Martin Kellogg University of Washington, Narges Shadab University of California at Riverside, Manu Sridharan University of California at Riverside, Michael D. Ernst University of Washington DOI | ||
04:10 10mPaper | JSISOLATE: Lightweight In-Browser JavaScript Isolation Research Papers DOI | ||
04:20 5mPaper | Software Robustness: A Survey, a Theory, and Prospects Ideas, Visions and Reflections Justyna Petke University College London, David Clark University College London, William B. Langdon University College London DOI | ||
04:25 5mPaper | Health of Smart Ecosystems Ideas, Visions and Reflections Noura El Moussa USI Lugano; Schaffhausen Institute of Technology, Davide Molinelli USI Lugano; Schaffhausen Institute of Technology, Mauro Pezze USI Lugano; Schaffhausen Institute of Technology, Martin Tappler TU Graz; Silicon Austria Labs DOI | ||
04:30 30mLive Q&A | Q&A (Dependability—Dependability) Research Papers |