#introspection #vmi


A cross-platform, unified, low-level VM introspection API supporting multiple hypervisors

27 releases

0.3.11 Oct 6, 2021
0.3.10 Oct 1, 2021
0.3.8 Sep 29, 2021
0.3.5 Jul 30, 2021
0.1.10 Dec 18, 2020

#93 in Emulators

Download history 53/week @ 2023-10-29 1/week @ 2023-11-05 6/week @ 2023-11-12 6/week @ 2023-11-19 112/week @ 2023-11-26 27/week @ 2023-12-03 27/week @ 2023-12-10 54/week @ 2023-12-24 28/week @ 2023-12-31 4/week @ 2024-01-07 1/week @ 2024-01-14 27/week @ 2024-01-21 57/week @ 2024-01-28 1/week @ 2024-02-04 85/week @ 2024-02-11

171 downloads per month




A cross-platform unified Virtual Machine Introspection API library

CI crates.io docs.rs gitter gitpod


Table of Contents


libmicrovmi aims to provide a cross-platform unified Virtual Machine Introspection API. (See What's VMI ?)

The term micro (μ) refers to the library's simplicity as well as the letter U standing for Unified interface.

Virtual Machine Introspection has been around since 2003, yet the ecosystem is still heavily fragmented and lacks standards as well as interoperability. (See VMI Ecosystem Fragmentation)

The main objective is to provide the simplest virtual machine introspection abstraction, offering a standard API to interact with any VMI provider, with a high degree of compatibility and composability to be integrated with any high-level VMI application.


Project Status

Below you can find a table describing the apps and drivers that can be used with libmicrovmi.

App Driver
API Platform
  • ✅ Linux
  • ✅ Windows
  • 🔲 MacOS


  • ✅: full support
  • 🟧: partial support
  • 🔲: TODO

Getting Started

The documentation is here to guide you, whether you are a user or developer.


User documentation

  • I would like to install libmicrovmi on my system
  • I would like to know how to setup my VMI app with libmicrovmi
  • I would like to know which drivers are available and how to initialize them


Developer documentation

  • I am developing a memory forensic / VM introspection app, and I want an API that supports multiple hypervisors at glance
  • I want to add a new driver for libmicrovmi


Our documentation is hosted online at online_docs

You can find it at doc/ as an mdbook 📖

To build the docs locally:

$ cargo install mdbook
$ mdbook build doc
$ xdg-open doc/book/index.html



GNU General Public License v3.0


~172K SLoC