README.md: document aim for separating concerns

While there may be some work to do on the testing framework to make
proper use of vm-virtio we should at least document the desire for
modularity.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
This commit is contained in:
Alex Bennée 2021-11-02 15:51:48 +00:00 committed by Andreea Florescu
parent cf18bc7409
commit 31ec556560

View File

@ -9,3 +9,20 @@ crates.
Here is the list of device backends that we support:
- [I2C](https://github.com/rust-vmm/vhost-device/blob/master/src/i2c/README.md)
## Separation of Concerns
The binaries built by this repository can be run with any VMM which
can act as a vhost-user master. Typically they have been tested with
[QEMU](https://www.qemu.org) although the rust-vmm project does
provide a [vhost-user
master](https://github.com/rust-vmm/vhost/tree/main/src/vhost_user)
crate for rust based VMMs.
While it's possible to implement all parts of the backend inside the
vhost-device workspace consideration should be given to separating the
VirtQueue handling and response logic to a crate in [vm-virtio
devices](https://github.com/rust-vmm/vm-virtio/tree/main/crates/devices).
This way a monolithic rust-vmm VMM implementation can reuse the core
logic to service the virtio requests directly in the application.