Dp 448 en
Finding Deadlocks Using Static Code Analysis
Author: Navara Filip
The thesis explores an algorithm for finding potential deadlocks in parallel programs written for the .NET Framework. Our goal is to simplify testing of parallel programs and to determine places in the code that could possibly cause problems and that should be examined as a part of the software testing life cycle. We present a design and implementation of an algorithm for finding these potential deadlock possibilities by construction of a lock-order graph by a static code analysis. This graph represents the order in which locks are acquired by the program. Cycles in the graph indicate deadlock possibilities, and our tool reports them. We evaluated the implementation on one commercial application and identified that 4 out of the 40 reported possibilities may lead to a deadlock.
- Filip Navara,mailto:filip.navara@gmail.com