Detecting and Resolving Deadlocks in Java Libraries
Marco Milani
Detecting and Resolving Deadlocks in Java Libraries.
Rel. Maurizio Morisio. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2023
|
Preview |
PDF (Tesi_di_laurea)
- Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives. Download (1MB) | Preview |
Abstract
Deadlocks is a common problem in concurrent programming. It can cause programs blockage unresponsive and hinder the efficient utilization of hardware capabilities. The objective of this research is to show a methodology that can effectively identify and resolve deadlocks occurring within real world applications using Java libraries, thereby improving the reliability and performance of software applications. To achieve this objective, we conducted a comprehensive investigation of Java libraries, leading to the identification of various instances of deadlocks. We developed specialized drivers to recreate these deadlocks, enabling a thorough analysis of their occurrence and behavior within the libraries. Subsequently, we used the Deadlock Detector and Solver (DDS) toolset to automatically detect and resolve deadlocks during run-time.
DDS relies on a supervisory controller to monitor program execution and efficiently detect deadlocks caused by hold-and-wait cycles on Java monitor and reentrant locks
Tipo di pubblicazione
URI
![]() |
Modifica (riservato agli operatori) |
