4bc4b131d4
This is the (user-space) runtime verification tool, named rv. This tool aims to be the interface for in-kernel rv monitors, as well as the home for monitors in user-space (online asynchronous), and in *eBPF. The tool receives a command as the first argument, the current commands are: list - list all available monitors mon - run a given monitor Each monitor is an independent piece of software inside the tool and can have their own arguments. There is no monitor implemented in this patch, it only adds the basic structure of the tool, based on rtla. # rv --help rv version 6.1.0-rc4: help usage: rv command [-h] [command_options] -h/--help: print this menu command: run one of the following command: list: list all available monitors mon: run a monitor [command options]: each command has its own set of options run rv command -h for further information *dot2bpf is the next patch set, depends on this, doing cleanups. Link: https://lkml.kernel.org/r/fb51184f3b95aea0d7bfdc33ec09f4153aee84fa.1668180100.git.bristot@kernel.org Cc: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Daniel Bristot de Oliveira <bristot@kernel.org> Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
39 lines
1.0 KiB
Plaintext
39 lines
1.0 KiB
Plaintext
RV: Runtime Verification
|
|
|
|
Runtime Verification (RV) is a lightweight (yet rigorous) method that
|
|
complements classical exhaustive verification techniques (such as model
|
|
checking and theorem proving) with a more practical approach for
|
|
complex systems.
|
|
|
|
The rv tool is the interface for a collection of monitors that aim
|
|
analysing the logical and timing behavior of Linux.
|
|
|
|
Installing RV
|
|
|
|
RV depends on the following libraries and tools:
|
|
|
|
- libtracefs
|
|
- libtraceevent
|
|
|
|
It also depends on python3-docutils to compile man pages.
|
|
|
|
For development, we suggest the following steps for compiling rtla:
|
|
|
|
$ git clone git://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git
|
|
$ cd libtraceevent/
|
|
$ make
|
|
$ sudo make install
|
|
$ cd ..
|
|
$ git clone git://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git
|
|
$ cd libtracefs/
|
|
$ make
|
|
$ sudo make install
|
|
$ cd ..
|
|
$ cd $rv_src
|
|
$ make
|
|
$ sudo make install
|
|
|
|
For further information, please see rv manpage and the kernel documentation:
|
|
Runtime Verification:
|
|
Documentation/trace/rv/runtime-verification.rst
|