/kernelshark-xentrace-plugin-rs

XenTrace data processing interface for KernelShark in Rust.

Primary LanguageRustGNU Lesser General Public License v2.1LGPL-2.1

KernelShark XenTrace plugin in RUST

This plugin allows you to view the traces generated by XenTrace on KernelShark-v2.

This is a Rust implementation of a project for the final three-year degree exam at the University of Turin.






Building

Dependencies

  • rust (v1.65+)

Testing/Development

$ git clone https://github.com/giuseppe998e/kernelshark-xentrace-plugin-rs.git
$ cd kernelshark-xentrace-plugin-rs/
$ git checkout develop #opt
$ cargo build

You can find the plugin file into target/debug/libkernelshark_xentrace_plugin.so

Optimized for usage

$ git clone https://github.com/giuseppe998e/kernelshark-xentrace-plugin-rs.git
$ cd kernelshark-xentrace-plugin-rs/
$ cargo build --release

You can find the plugin file into target/release/libkernelshark_xentrace_plugin.so

Usage

$ export XENTRACE_CPUHZ=3.6G # Sets the CPU speed used (in (G)hz / (M)hz / (K)hz / hz )
$ kernelshark -p libkernelshark_xentrace_plugin.so xentrace.bin

N.B. The plugin uses a predefined value of 2.4G as CPU frequency.

License

This plugin is released under the GNU Lesser General Public License v2.1 (or later).
This plugin uses code from various projects: