Giter VIP home page Giter VIP logo

kernelshark-xentrace-plugin's Introduction

XenTrace plugin for KernelShark

This plugin allows you to view the traces generated by XenTrace on KernelShark-v2.
This is a project for the final three-year degree exam at the University of Turin.
Development is supervised by Dario Faggioli (@dfaggioli) and Enrico Bini (@ebni).


A "freelance" implementation of this project using the Rust programming language can be found at this repository: giuseppe998e/kernelshark-xentrace-plugin-rs.


Building

Dependencies

  • xen (opt.)
  • kernelshark-v2 (opt.)
  • json-c

Testing/Development

$ git clone --recurse-submodules https://github.com/giuseppe998e/kernelshark-xentrace-plugin.git
$ cd kernelshark-xentrace-plugin/
$ make CFLAGS="-fPIC -Wall -g -DDEBUG"

N.B. KernelShark should be compiled with the argument -DCMAKE_BUILD_TYPE=Debug for a better debugging experience.

Optimized for usage

$ git clone --recurse-submodules https://github.com/giuseppe998e/kernelshark-xentrace-plugin.git
$ cd kernelshark-xentrace-plugin/
$ make

Usage

$ export XEN_CPUHZ=3,6G # Sets the CPU speed used (in (G)hz / (M)hz / (K)hz / hz )
$ export XEN_ABSTS=1    # Sets the timestamp as absolute value ( 1 / Y / y ) (WIP)
$ kernelshark -p out/ks-xentrace.so trace.xen

N.B. When environment variables are not set, the plugin uses predefined values: 2,4G and 0 respectively.

License

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

  • libkshark.h and libkshark-plugin.h, from KernelShark-v2.beta, released under the LGPLv2.1;
  • trace.h, from Xen, released under the MIT License;
  • XenTrace-Parser released under the LGPLv2.1.

kernelshark-xentrace-plugin's People

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

dfaggioli

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.