Static detection of deadlock for Java libraries
Thesis (S.M.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2005.
Main Author: | |
---|---|
Other Authors: | |
Format: | Thesis |
Language: | eng |
Published: |
Massachusetts Institute of Technology
2014
|
Subjects: | |
Online Access: | http://hdl.handle.net/1721.1/87909 |
_version_ | 1811084070553124864 |
---|---|
author | Williams, Amy Lynne, Ph.D. Massachusetts Institute of Technology |
author2 | Michael D. Ernst. |
author_facet | Michael D. Ernst. Williams, Amy Lynne, Ph.D. Massachusetts Institute of Technology |
author_sort | Williams, Amy Lynne, Ph.D. Massachusetts Institute of Technology |
collection | MIT |
description | Thesis (S.M.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2005. |
first_indexed | 2024-09-23T12:44:13Z |
format | Thesis |
id | mit-1721.1/87909 |
institution | Massachusetts Institute of Technology |
language | eng |
last_indexed | 2024-09-23T12:44:13Z |
publishDate | 2014 |
publisher | Massachusetts Institute of Technology |
record_format | dspace |
spelling | mit-1721.1/879092019-04-11T10:33:37Z Static detection of deadlock for Java libraries Williams, Amy Lynne, Ph.D. Massachusetts Institute of Technology Michael D. Ernst. Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science. Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science. Electrical Engineering and Computer Science. Thesis (S.M.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2005. Includes bibliographical references (p. 63-66). Library writers wish to provide a guarantee not only that each procedure in the library performs correctly in isolation, but also that the procedures perform correctly when run in conjunction. To this end, we propose a method for static detection of deadlock in Java libraries. Our goal is to determine whether client code exists that may deadlock a library, and, if so, to enable the library writer to discover the calling patterns that can lead to deadlock. Our flow-sensitive, context-sensitive analysis determines possible deadlock configurations using a lock-order graph. This graph represents the order in which locks are acquired by the library. Cycles in the graph indicate deadlock possibilities, and our tool reports all such possibilities. We implemented our analysis and evaluated it on 18 libraries comprising 1245 kLOC. We verified 13 libraries to be free from deadlock, and found -14 distinct deadlocks in 3 libraries. by Amy Lynne Williams. S.M. 2014-06-13T22:31:02Z 2014-06-13T22:31:02Z 2005 2005 Thesis http://hdl.handle.net/1721.1/87909 67766412 eng M.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission. http://dspace.mit.edu/handle/1721.1/7582 66 p. application/pdf Massachusetts Institute of Technology |
spellingShingle | Electrical Engineering and Computer Science. Williams, Amy Lynne, Ph.D. Massachusetts Institute of Technology Static detection of deadlock for Java libraries |
title | Static detection of deadlock for Java libraries |
title_full | Static detection of deadlock for Java libraries |
title_fullStr | Static detection of deadlock for Java libraries |
title_full_unstemmed | Static detection of deadlock for Java libraries |
title_short | Static detection of deadlock for Java libraries |
title_sort | static detection of deadlock for java libraries |
topic | Electrical Engineering and Computer Science. |
url | http://hdl.handle.net/1721.1/87909 |
work_keys_str_mv | AT williamsamylynnephdmassachusettsinstituteoftechnology staticdetectionofdeadlockforjavalibraries |