/wasp

Wasp: micro-hypervisor that enables lightweight, isolated virtines

Primary LanguageC

License: MIT

Wasp

Wasp is an embeddable micro-hypervisor designed to support virtines, lightweight, isolated execution contexts for individual functions. Virtines can either be created manually by invoking a runtime API, or automatically by using our Clang/LLVM compiler extensions. In the latter case, a develper can create a virtine by simply adding a keyword to a C function:

virtine int foo (int arg) {
    // code
} 

Paper

Build Instructions

make
sudo make install

Yeah its pretty easy.

Using

Just include it as a shared library when building:

clang++ -lwasp main.cpp -o main

Run Virtine Tests

TODO

Reproduce Paper Results

TODO

Code Structure

TODO

Acknowledgements

Wasp and the virtines codebase were made possible with support from the United States National Science Foundation (NSF) via grants CRI-1730689, REU-1757964, CNS-1718252, and CNS-1763612.

License

MIT License

Contact

The Wasp/virtines codebase is currently maintained by Nicholas Wanninger (ncw [at] u [dot] northwestern [dot] edu).