ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
CIL: Intermediate Language and Tools for Analysis and Transformation of C Programs
CC '02 Proceedings of the 11th International Conference on Compiler Construction
An Overview of the Runtime Verification Tool Java PathExplorer
Formal Methods in System Design
Efficient monitoring of safety properties
International Journal on Software Tools for Technology Transfer (STTT) - Special section on tools and algorithms for the construction and analysis of systems
Implementing protocols via declarative event patterns
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
An expressive aspect language for system applications with Arachne
Proceedings of the 4th international conference on Aspect-oriented software development
Adding trace matching with free variables to AspectJ
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Finding application errors and security flaws using PQL: a program query language
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Modeling and Verification Using UML Statecharts: A Working Guide to Reactive System Design, Runtime Monitoring and Execution-based Model Checking
Mop: an efficient and generic runtime verification framework
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Spin model checker, the: primer and reference manual
Spin model checker, the: primer and reference manual
Testing Conformance of Real-Time Applications by Automatic Generation of Observers
Electronic Notes in Theoretical Computer Science (ENTCS)
Electronic Notes in Theoretical Computer Science (ENTCS)
Temporal Assertions using AspectJ
Electronic Notes in Theoretical Computer Science (ENTCS)
Rule systems for run-time monitoring: from eagle to ruler
RV'07 Proceedings of the 7th international conference on Runtime verification
Extending model checking with dynamic analysis
VMCAI'08 Proceedings of the 9th international conference on Verification, model checking, and abstract interpretation
SC'05 Proceedings of the 4th international conference on Software Composition
You should better enforce than verify
RV'10 Proceedings of the First international conference on Runtime verification
Copilot: a hard real-time runtime monitor
RV'10 Proceedings of the First international conference on Runtime verification
Past time LTL runtime verification for microcontroller binary code
FMICS'11 Proceedings of the 16th international conference on Formal methods for industrial critical systems
Monitoring aspects for the customization of automatically generated code for big-step models
Proceedings of the 10th ACM international conference on Generative programming and component engineering
Automated test-trace inspection for microcontroller binary code
RV'11 Proceedings of the Second international conference on Runtime verification
Runtime verification for ultra-critical systems
RV'11 Proceedings of the Second international conference on Runtime verification
What does AI have to do with RV?
ISoLA'12 Proceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I
A novel requirement analysis approach for periodic control systems
Frontiers of Computer Science: Selected Publications from Chinese Universities
Copilot: monitoring embedded systems
Innovations in Systems and Software Engineering
Runtime verification of microcontroller binary code
Science of Computer Programming
Hi-index | 0.00 |
We present in this paper a framework, Rmor, for monitoring the execution of C programs against state machines, expressed in a textual (non-graphical) format in files separate from the program. The state machine language has been inspired by a graphical state machine language Rmorrecently developed at the Jet Propulsion Laboratory, as an alternative to using Linear Temporal Logic (LTL) for requirements capture. Transitions between states are labeled with abstract event names and Boolean expressions over such. The abstract events are connected to code fragments using an aspect-oriented pointcut language similar to AspectJ's or AspectC's pointcut language. The system is implemented in the C analysis and transformation package Cil, and is programmed in Ocaml, the implementation language of Cil. The work is closely related to the notion of stateful aspects within aspect-oriented programming, where pointcut languages are extended with temporal assertions over the execution trace.