An overview of the MOP runtime verification framework

  • Authors:
  • Patrick O’Neil Meredith;Dongyun Jin;Dennis Griffith;Feng Chen;Grigore Roşu

  • Affiliations:
  • University of Illinois at Urbana-Champaign, Department of Computer Science, 201 N Goodwin Ave., 61801, Urbana, IL, USA;University of Illinois at Urbana-Champaign, Department of Computer Science, 201 N Goodwin Ave., 61801, Urbana, IL, USA;University of Illinois at Urbana-Champaign, Department of Computer Science, 201 N Goodwin Ave., 61801, Urbana, IL, USA;University of Illinois at Urbana-Champaign, Department of Computer Science, 201 N Goodwin Ave., 61801, Urbana, IL, USA;University of Illinois at Urbana-Champaign, Department of Computer Science, 201 N Goodwin Ave., 61801, Urbana, IL, USA

  • Venue:
  • International Journal on Software Tools for Technology Transfer (STTT) - Runtime Verification
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

This article gives an overview of the, monitoring oriented programming framework (MOP). In MOP, runtime monitoring is supported and encouraged as a fundamental principle for building reliable systems. Monitors are automatically synthesized from specified properties and are used in conjunction with the original system to check its dynamic behaviors. When a specification is violated or validated at runtime, user-defined actions will be triggered, which can be any code, such as information logging or runtime recovery. Two instances of MOP are presented: JavaMOP (for Java programs) and BusMOP (for monitoring PCI bus traffic). The architecture of MOP is discussed, and an explanation of parametric trace monitoring and its implementation is given. A comprehensive evaluation of JavaMOP attests to its efficiency, especially in comparison with similar systems. The implementation of BusMOP is discussed in detail. In general, BusMOP imposes no runtime overhead on the system it is monitoring.