[Virtio-fs] [qemu-web PATCH v2] Add virtio-fs in OSv overview blog post

Fotis Xenakis foxen at windowslive.com
Fri Nov 6 22:43:48 UTC 2020


From: Dr. David Alan Gilbert <dgilbert at redhat.com>
* Fotis Xenakis (foxen at windowslive.com) wrote:
> This post briefly goes over the main points of virtio-fs and OSv, a
> unikernel running under QEMU/KVM and taking advantage of its virtio-fs
> implementation.
>
> Changes since v1:
> - Fixed wording and links, as suggested by Thomas Huth.
> - Added a short example of virtio-fs usage in OSv.
>
> Signed-off-by: Fotis Xenakis <foxen at windowslive.com>

> +One central point is OSv's support for booting from virtio-fs: this enables
> +deploying a modified version or a whole new application **without rebuilding**
> +the image, just by adjusting its root file system contents on the host. Last,
> +owing to the DAX window practically providing low-overhead access to the host's
> +page cache, scalability is also expected to excel, with it being a common
> +concern due to the potentially high density of unikernels per host.

Hi Fotis,
Hello Dave,
  Since I'm not used to unikernels, I'm a little confused by this; I'd
appreciate some explanation.

  In your unikernel, does the root filesystem just contain data?  I mean
being a 'unikernel' aren't all the binaries and support all linked into
the kernel itself?
Short answer: the root file system doesn't contain only data, the
executable can also be loaded from it. Although a unikernel, it
supports both the embedded-in-kernel and separate-filesystem
approaches.

OSv is more heavy-weight than most unikernels, in the sense that it
supports a lot of features found in general-purpose OSs. One could
just describe it as a specialized, light-weight OS. On the filesystem
side, it's actually pretty close e.g. to Linux: it has a VFS and multiple
filesystems:

  *   pseudo-fs (devfs and others)
  *   ramfs, which is indeed embedded into the kernel
  *   ZFS and ROFS, on regular block devices
  *   NFS, virtio-fs

Also like Linux, it initially boots into its initramfs (embedded in the
kernel) and then typically mounts a root file system from a device
(ZFS, ROFS or virtio-fs), before executing the application code.

In case this is not clear, please feel free to ask further!

Fotis

Dave
--
Dr. David Alan Gilbert / dgilbert at redhat.com / Manchester, UK

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/virtio-fs/attachments/20201106/2e0c2ebf/attachment.htm>


More information about the Virtio-fs mailing list