Install
Authors
Maintainers
Sources
sha256=a56bb75672eb28b947386222849abfb353ad6b4f74030ddd4a90cd033ce696a2
sha512=9124ff42b902681a3ab077fb64866b86f4a180d05fd89ada1a1ad4145ce3e9a35e3a3d88ce4ffb15457fa8aee04a8b892c88d0be4ebd7619a29552acf281e811
README.md.html
mirage-xen-block
This library allows a Mirage OCaml application to
read and write blocks from any Xen "backend" (server)
service block requests from any Xen "frontend" (client)
This library can be used in both kernelspace (on Xen)
or in userspace (using libraries that come with Xen).
This library depends on the
shared-memory-ring
library which enables high-throughput, low-latency data
transfers over shared memory on both x86 and ARM architectures,
using the standard Xen RPC and event channel semantics.
Example: in Mirage unikernels on xen
The block_perf
example shows how a Mirage application can use this library
to access a virtual disk with very little overhead.
For performance results and discussion, see
Unikernels: Library Operating Systems for the Cloud
Example: prototyping new storage for Virtual Machines
The xen-disk application runs
in userspace and attaches a virtual disk to an existing xen VM.
The disk read and write requests are served in userspace through
one of a set of 'backends' which are selectable on the commandline.