wiki/phyllomeos/roadmap.md
Lukas eede7d0df8 Under construction
add section under construction to a bunch of file;
fetch contents from the white-paper
2021-11-15 17:20:36 +01:00

6.0 KiB

title description published date tags editor dateCreated
Roadmap true 2021-11-13T11:55:14.298Z markdown 2021-11-13T11:55:14.298Z

Section under construction. Tables is broken. Would have to fix it. {.is-warning}

Take this table as an example:

Description vfio-pci vfio-mdev vfio-gpu
Performance Near-native performance and full features set Near-native performance and full features set Degraded performance and limited features set
Guests support UNIX and non-UNIX guests UNIX and non-UNIX guests Works only on selected UNIX guests
Driver No special driver in the guest No special driver in the guest Requires a special driver in the guest
Number of host GPUs Two GPUs in most situations A single GPU A single GPU
GPU support Mostly GPU agnostic Recent Intel integrated GPUs and some professional grade Nvidia GPUs Mostly GPU agnostic

Roadmap


                                          Fedora 34               Phyllome OS alpha   Phyllome OS beta                                     Phyllome OS 1.0

Out-of-the box support for virtualization No Yes Yes Yes Emulator/virtualizer QEMU QEMU QEMU, Cloud Hypervisor (does CH support vfio-pci?) Cloud Hypervisor Virtual motherboard support i440fx / Q35 Q35 Q35, virt virt Firmware OVMF, SeaBIOS OVMF OVMF OVMF Hypervisor KVM KVM KVM KVM Based on Itself Fedora Server Fedora Silverblue Fedora Silverblue Desktop-oriented (GNOME-shell) Possible Yes, GNOME-shell Yes Yes Package management RPM RPM RPM-ostree RPM-ostree Rolling release No No Yes Yes Live-edition No No No Yes Local first Possible Yes Yes Yes Default filesystem Btrfs Ext4 Ext4 F2FS Host encryption Possible No Filesystem-level (fscrypt) Filesystem-level (fscrypt) GPU support Intel, AMD and Nvidia Intel Intel and AMD Intel AMD and Nvidia Target release date Released 2021 2022 2022


Beyond the first production-ready release

Here are some features that may be added later :

  • App store
    • An application store for distributing prepackaged and easy-to-deploy operating systems
  • A new GUI application to manage virtual machines
    • The virtual machine manager does more than what Phyllome OS needs. It would make sense to rely on a leaner, more simple software, similar to GNOME Boxes.
    • Ideally, it would be written in Rust, just as the Cloud Hypervisor
  • Graphics
    • Out-of-the box support for Single GPU passthrough
      • Support for single GPU passthrough would make it easier to run Phyllome OS on hardware that features a single graphics card lacking support for vfio-mdev.
    • Out-of-the box support for vfio-mdev on Nvidia, consumer grade GPUs.
      • A 2021 project is bringing vfio-mdev to Nvidia, consumer grade GPUs. It would be great to support it and offer Phyllome's users the ability to split their physical GPUs.
      • Out-of-the box support for SR/IOV on generation 11^th^ of Intel graphics
  • Streaming
    • Making encoding and decoding a virtual machine desktop or display more efficient would allow for more diverse uses, including usable remote desktops.
      • For that to happen, it would mean to support virtio-video.
      • Another route would be to use WebRTC on Wayland.
  • Support the Virtual I/O Device (VIRTIO) Version 1.2
    • Version 1.2 of the VIRTIO specification will soon be released with new virtual devices. Phyllome OS will need to support these.
  • Support platform-dependent confidential computing features
    • On public clouds -- where many virtual machines are collocated underneath the same hypervisor -- there are ongoing efforts to make it possible to run workloads without having to blindly trust the host system. Some of those efforts rely on platform-specific technologies, such as Intel's SGX Secure Enclave or and AMD's Secure Encrypted Virtualization (SEV). It would be nice to be able to support these.
  • First-class support for more open x86 hardware
    • It would be great to optimize Phyllome OS to work on a recent, more open x86 motherboard that supports both openBMC and Coreboot[^54].
  • Support beyond the x86 architecture
    • Support for hardware based on ARM and RISC-V architectures would be great.