Dynamic Symbolic Execution of Distributed Concurrent Objects

  • Authors:
  • Andreas Griesmayer;Bernhard Aichernig;Einar Broch Johnsen;Rudolf Schlatte

  • Affiliations:
  • International Institute for Software Technology, United Nations University (UNU-IIST), Macao S.A.R., China;International Institute for Software Technology, United Nations University (UNU-IIST), Macao S.A.R., China and Institute for Software Technology, Graz University of Technology, Austria;Department of Informatics, University of Oslo, Norway;International Institute for Software Technology, United Nations University (UNU-IIST), Macao S.A.R., China and Institute for Software Technology, Graz University of Technology, Austria

  • Venue:
  • FMOODS '09/FORTE '09 Proceedings of the Joint 11th IFIP WG 6.1 International Conference FMOODS '09 and 29th IFIP WG 6.1 International Conference FORTE '09 on Formal Techniques for Distributed Systems
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper extends dynamic symbolic execution to distributed and concurrent systems. Dynamic symbolic execution is used to systematically identify equivalence classes of input values and has been shown to scale well to large systems. Although mainly applied to sequential programs, this scalability makes it interesting to consider the technique in the distributed and concurrent setting as well. In order to extend the technique to concurrent systems, it is necessary to obtain sufficient control over the scheduling of concurrent activities to avoid race conditions. Creol, a modeling language for distributed concurrent objects, solves this problem by abstracting from a particular scheduling policy but explicitly defining scheduling points. This provides sufficient control to apply the technique of dynamic symbolic of interleaved processes. The technique has been formalized in rewriting logic and executes in Maude.