• Documents
  • Authors
  • Tables
  • Log in
  • Sign up
  • MetaCart
  • DMCA
  • Donate

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations

DMCA

QVM: An Efficient Runtime for Detecting Defects in Deployed Systems

Cached

  • Download as a PDF

Download Links

  • [www.research.ibm.com]
  • [www.research.ibm.com]
  • [www.cs.technion.ac.il]
  • [www.cs.tufts.edu]
  • [www.srl.inf.ethz.ch]
  • [www.cs.technion.ac.il]
  • [www2006.org]

  • Save to List
  • Add to Collection
  • Correct Errors
  • Monitor Changes
by Matthew Arnold , Martin Vechev , Eran Yahav
Citations:55 - 6 self
  • Summary
  • Citations
  • Active Bibliography
  • Co-citation
  • Clustered Documents
  • Version History

BibTeX

@MISC{Arnold_qvm:an,
    author = {Matthew Arnold and Martin Vechev and Eran Yahav},
    title = {QVM: An Efficient Runtime for Detecting Defects in Deployed Systems},
    year = {}
}

Share

Facebook Twitter Reddit Bibsonomy

OpenURL

 

Abstract

Coping with software defects that occur in the post-deployment stage is a challenging problem: bugs may occur only when the system uses a specific configuration and only under certain usage scenarios. Nevertheless, halting production systems until the bug is tracked and fixed is often impossible. Thus, developers have to try to reproduce the bug in laboratory conditions. Often the reproduction of the bug consists of the lion share of the debugging effort. In this paper we suggest an approach to address the aforementioned problem by using a specialized runtime environment (QVM, for Quality Virtual Machine). QVM efficiently detects defects by continuously monitoring the execution of the application in a production setting. QVM enables the efficient checking of violations of user-specified correctness properties, e.g., typestate safety properties, Java assertions, and heap properties pertaining to ownership. QVM is markedly different from existing techniques for continuous monitoring by using a novel overhead manager which enforces a user-specified overhead budget for quality checks. Existing tools for error detection in the field usually disrupt the operation of the deployed system. QVM, on the other hand, provides a balanced trade off between the cost of the monitoring process and the maintenance of sufficient accuracy for detecting defects. Specifically, the overhead cost of using QVM instead of a standard JVM, is low enough to be acceptable in production environments. We implemented QVM on top of IBM’s J9 Java Virtual Machine and used it to detect and fix various errors in realworld applications.

Keyphrases

deployed system    efficient runtime    heap property    sufficient accuracy    software defect    overhead cost    realworld application    specific configuration    production environment    novel overhead manager    quality virtual machine    error detection    typestate safety property    monitoring process    balanced trade    lion share    ibm j9 java virtual machine    certain usage scenario    laboratory condition    continuous monitoring    user-specified overhead budget    quality check    specialized runtime environment    existing tool    aforementioned problem    user-specified correctness property    standard jvm    post-deployment stage    java assertion    production setting    production system    various error    efficient checking   

Powered by: Apache Solr
  • About CiteSeerX
  • Submit and Index Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2019 The Pennsylvania State University