1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| | # Virtual Machine Manager
## Status
Accepted
## Context
rust-vmm-based VMM provides memory and concurrency safe solution.
cloud-hypervisor was chosen because firecrack does not support other
virtio-devices than net or block. crosvm was not chosen because cloud-hypervisor
has more flexible IPC mechanisms, more engaging community as LF-project.
cloud-hypervisor has more core features - such as snapshotting, live migration
and more general hot plugging. crosvm supports more devices we will also need.
It was seen easier to port devices from crosvm to cloud-hypervisor than to port
core features from cloud-hypervisor to crosvm.
## Decision
Spectrum OS design and implementation decision is to use cloud-hypervisor as the
primary VMM.
## Consequences
We gotta port some stuff from crosvm to cloud-hypervisor. It's easier for
Spectrum to handle virtualization dynamically with cloud-hypervisor. If the
primary VMM, cloud-hypervisor, is exchanged for trials etc. functionality is
expected to break or not supported.
|