NOVA User-Level Environment  Version testbox/changed-memory-timing-317-g320d8b5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
NOVA User-Level Environment Documentation

The NOVA OS Virtualization Architecture is a research project aimed at constructing a secure virtualization environment with small trusted computing base. NOVA consists of a microhypervisor and an unprivileged multi-server user environment running on top of it.


NOVA User-Level Environment (NUL) is the multi-server user environment designed for NOVA. It is componentized into host-drivers, device models and virtual executors. From these components applications are build. The most prominent apps are the Partition Manager, called sigma0, and the x86 VMM (Virtual-Machine Monitor) called Vancouver.

The Partition Manager statically partitions the platform resources such as memory or CPU. Device drivers, for example for the disk and the graphics card, are linked to it. Moving them out to their own tasks is currently work in progress.

The VMM allows to run unmodified guest operating systems ontop of the microhypervisor. It contains the virtual device models to give an OS the illusion of running on bare hardware. Furthermore it emulates realmode and MMIO instructions and provides a virtual BIOS.

Status of this documentation: Very preliminary!

Table of content: