A Survey of Runtime Monitoring Instrumentation Techniques
Ian Cassar (University of Malta, Reykjavik University), Adrian, Francalanza (University of Malta), Luca Aceto (Reykjavik University), Anna, Ing\'olfsd\'ottir (Reykjavik University)

TL;DR
This survey reviews various runtime monitoring techniques, classifying them along a spectrum from asynchronous to synchronous, highlighting their methods, advantages, and applications in software correctness verification.
Contribution
It provides a comprehensive classification and comparison of runtime monitoring instrumentation techniques from existing literature.
Findings
Monitors can be derived automatically from high-level specifications.
Instrumentation techniques vary from asynchronous to synchronous.
Different techniques suit different correctness verification needs.
Abstract
Runtime Monitoring is a lightweight and dynamic verification technique that involves observing the internal operations of a software system and/or its interactions with other external entities, with the aim of determining whether the system satisfies or violates a correctness specification. Compilation techniques employed in Runtime Monitoring tools allow monitors to be automatically derived from high-level correctness specifications (aka. properties). This allows the same property to be converted into different types of monitors, which may apply different instrumentation techniques for checking whether the property was satisfied or not. In this paper we compare and contrast the various types of monitoring methodologies found in the current literature, and classify them into a spectrum of monitoring instrumentation techniques, ranging from completely asynchronous monitoring on the one…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
