Static Executes-Before Analysis for Event Driven Programs

Rekha Pai, Abhishek Uppar, Akshatha Shenoy, Pranshul Kushwaha,Deepak D'Souza

PROCEEDINGS OF THE 30TH ACM JOINT MEETING EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, ESEC/FSE 2022(2022)

Cited 0|Views2
No score
Abstract
The executes-before relation between tasks is fundamental in the analysis of Event Driven Programs with several downstream applications like race detection and identifying redundant synchronizations. We present a sound, efficient, and effective static analysis technique to compute executes-before pairs of tasks for a general class of event driven programs. The analysis is based on a small but comprehensive set of rules evaluated on a novel structure called the task post graph of a program. We show how to use the executes-before information to identify disjoint-blocks in event driven programs and further use them to improve the precision of data race detection for these programs. We have implemented our analysis in the FlowDroid framework in a tool called ANDRACER and evaluated it on several Android apps, bringing out the scalability, recall, and improved precision of the analyses.
More
Translated text
Key words
static analysis,executes-before,event driven programming,race detection,asynchronous calls,Android applications
AI Read Science
Must-Reading Tree
Example
Generate MRT to find the research sequence of this paper
Chat Paper
Summary is being generated by the instructions you defined