• Home
  • Search
  • Striking a new balance between program instrumentation and debugging time
  • Open Access IconOpen Access
  • Cite Icon32
  • https://doi.org/10.1145/1966445.1966464Copy DOI Icon

Striking a new balance between program instrumentation and debugging time

  • Apr 10, 2011
  • Olivier Crameri +2 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Although they are helpful in many cases, state-of-the-art bug reporting systems may impose excessive overhead on users, leak private information, or provide little help to the developer in locating the problem. In this paper, we explore a new approach to bug reporting that uses partial logging of branches to record the path leading to a bug. We use static and dynamic analysis (both in isolation and in tandem) to identify the branches that need to be logged. When a bug is encountered, the system uses symbolic execution along the partial branch trace to reproduce the problem and find a set of inputs that activate the bug. The partial branch log drastically reduces the number of paths that would otherwise need to be explored by the symbolic execution engine. We study the tradeoff between instrumentation overhead and debugging time using an open-source Web server, the diff utility, and four coreutils programs. Our results show that the instrumentation method that combines static and dynamic analysis strikes the best compromise, as it limits both the overhead of branch logging and the bug reproduction time. We conclude that our techniques represent an important step in improving bug reporting and making symbolic execution more practical for bug reproduction.

Similar Papers
  • Research Article
  • Citations2

Prototyping symbolic execution engines for interpreted languages

  • Feb 24, 2014
  • ACM SIGPLAN Notices
  • Stefan Bucur +2
  • Conference Article
  • Citations39

Android testing via synthetic symbolic execution

  • Sep 03, 2018
  • Xiang Gao +3
  • Research Article
  • Citations2

The Optimization of a Symbolic Execution Engine for Detecting Runtime Errors

  • Jan 01, 2017
  • Acta Cybernetica
  • István Kádár
  • Conference Article
  • Citations33

Proving memory safety of floating-point computations by combining static and dynamic program analysis

  • Jul 12, 2010
  • Patrice Godefroid +1
  • Conference Article
  • Citations11

ApproxSymate: path sensitive program approximation using symbolic execution

  • Jun 23, 2019
  • Himeshi De Silva +3
  • PDF
  • Research Article
  • Citations67

Malware Classification Using Probability Scoring and Machine Learning

  • Jan 01, 2019
  • IEEE Access
  • Di Xue +4
  • Research Article
  • Citations4

Partial Solution Based Constraint Solving Cache in Symbolic Execution

  • Jul 12, 2024
  • Proceedings of the ACM on Software Engineering
  • Ziqi Shuai +6
  • Research Article
  • Citations1

Large Language Model Powered Symbolic Execution

  • Oct 09, 2025
  • Proceedings of the ACM on Programming Languages
  • Yihe Li +2
  • Dissertation

Data flow and heap analysis with application to privilege escalation vulnerability scanning and software theft detection

  • Jan 01, 2013
  • Ping-Fai Chan
  • Book Chapter
  • Citations2

Formal Framework for Reasoning About the Precision of Dynamic Analysis

  • Jan 01, 2020
  • Mila Dalla Preda +2
  • Book Chapter

Runtime Analysis and Instrumentation for Securing Software

  • Jan 01, 2010
  • R Sekar
  • Conference Article
  • Citations61

Program slicing enhances a verification technique combining static and dynamic analysis

  • Mar 26, 2012
  • Omar Chebaro +3
  • Research Article
  • Citations104

Symbolic Evaluation and the Analysis of Programs

  • Jul 01, 1979
  • IEEE Transactions on Software Engineering
  • T.E Cheatham +2
  • Research Article
  • Citations17

Symbolic pointer analysis for detecting memory leaks

  • Nov 01, 1999
  • ACM SIGPLAN Notices
  • Berhard Scholz +2
  • Research Article
  • Citations38

Eliminating Path Redundancy via Postconditioned Symbolic Execution

  • Jan 01, 2018
  • IEEE Transactions on Software Engineering
  • Qiuping Yi +5
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.