Back to overview

Analyzing Distributed Multi-platform Java and Android Applications with ShadowVM

Type of publication Peer-reviewed
Publikationsform Proceedings (peer-reviewed)
Author Sun Haiyang, Zheng Yudi, Bulej Lubomír, Kell Stephen, Binder Walter,
Project LoadOpt - Workload Characterization and Optimization for Multicore Systems
Show all

Proceedings (peer-reviewed)

Title of proceedings 13th Asian Symposium on Programming Languages and Systems
Place Pohang, Korea
DOI 10.1007/978-3-319-26529-2_19


In this tool demonstration, we present ShadowVM, a dynamic program analysis framework for Java and Android applications. ShadowVM offers a high-level programming model for expressing analyses, ensures complete bytecode coverage, and isolates the analysis from the observed application to avoid unwanted interference. An analysis implemented on top of ShadowVM can handle both Java and Android applications. First, we present and evaluate a simple code-coverage analysis implemented with ShadowVM. Second, we demonstrate the use of ShadowVM to analyze a distributed application comprising a Java server backend and an Android client frontend.