The goal of the OASIS Virtual I/O Device (VIRTIO) TC is to simplify virtual devices, making them more extensible and more recognizable.
The purpose of VIRTIO is to ensure that virtual environments and guests have a straightforward, efficient, standard, and extensible mechanism for virtual devices, rather than boutique per-environment or per-OS mechanisms. PCI devices of the VIRTIO family as found in virtual environments are not all that different from physical PCI devices. Treating them similarly allows the guest to use standard PCI drivers and discovery mechanisms.
The TC intends to define formal specifications for virtual device buses (including PCI) for a variety of devices, including network devices. Specification development will be based upon the "Virtio PCI Card Specification" v0.9.5, seeking solutions that support portability, simplicity, least-surprise for driver authors, extensibility, and performance. The specification will also document existing implementations and practice.
The expected TC deliverables include:
- Specification of feature negotiation, configuration and queues, from both driver and device points of view
- Specification of device-specific configuration
- Non-normative code examples for operation of guest/host side of buffers
- Non-normative guide for creating devices which also support previous mode(s)