As concurrency becomes prevalent, static analyses supporting contemporary concurrency models are necessary. Existing analysis designs for concurrency suffer from limitations stemming from the challenges that concurrency brings. First, concurrent programs are highly non-deterministic, leading to poor scalability of existing designs. Second, dynamic process creation is a crucial feature of modern concurrent programs that only few designs account for. Third, no single unified design supports the various concurrency models, and multiple concurrency models lack static analysis support. Finally, although concurrency models are often combined, no static analysis design accounts for this. We developed and formalized two analysis design methods providing a first step
towards a solution to these four problems, and applied them to two common concurrency models. These general designs should be amenable to supporting additional concurrency models. We propose to extend our work along three axes. First, we will investigate extending our designs to other contemporary concurrency models (atomics, channels, and STM) for which static analysis support is currently lacking. The insights gained in this manner will enable refining our designs. Second, we will investigate supporting combinations of concurrency models in these designs, as no existing analysis supports such combinations. Finally, we will improve the precision of each analysis by addressing limitations identified during our research.
Short titleOZR opvangmandaat
Effective start/end date1/10/1830/09/19

    Research areas

  • informatics

ID: 38770582