MrVM is an architecture for building
cross-layer, portable, composable, adaptive services. The heart of this architecture
is the Composed Virtual Machine(CVM) framework which allows the building of
a large system using small, safe, light-weight virtual machines. Traditionally,
complex computer services are solved using a huge and equally complex program.
With
MrVM, complex services can be divided into smaller ones, each
implemented using a light-weight VM and the composed VM solves the whole problem.
This facilitates solving complex problems using heuristics(
e.g. rule-based
approach). Portability allows VMs to be dynamically synchronized among all
participating hosts which accelerates the deployment of new applications without
waiting for standardization. Adaptability is achieved through dynamically
replacing individual VMs with little or no effects on others. Light-weightness
makes it feasible to extend
MrVM to small, low-power, resource-constrained
devices.
We used a modified DLX instruction set for our VM. The
register-based RISC instruction set allows us to map a VM into the physical
instruction set once a VM is standardized. We are using
MrVM to
build various applications including a flexible, fine-grained resource management
system, application specific protocol composition and adaptation.
Applications:
- Fine-grained, flexible resource control.
- Adaptive application specific protocol construction.
People:
- Dekai Li
- Bjorn Knutsson
- Jonathan Smith
Publication:
Software:
Our current software includes a modified LCC compiler
with DLX backend, assembler, a VM interpreter, dynamic loader and a
bunch of modified kernel files for our experiments. It is still under construction.
If you would like to join the development of
MrVM, please send an email
to the
current maintainer.