1. Virtio 官方标准设备驱动清单(按 ID 排序)
以下是 Virtio 子系统支持的全量设备驱动,基于 Linux 内核 virtio_ids.h 标准定义,包含设备名称、ID 编号及核心用途:
| 设备驱动名称 | 设备 ID | 核心用途 |
|---|---|---|
| virtio-net | 1 | 虚拟网络设备,实现 Guest 与 Host / 外部网络的通信(支持 TCP/IP 协议栈) |
| virtio-block | 2 | 虚拟块设备,模拟硬盘、U 盘等存储设备(对接文件系统,支持读写、分区管理) |
| virtio-console | 3 | 虚拟控制台设备,提供 Guest 与 Host 之间的文本交互(类似串口终端) |
| virtio-rng | 4 | 虚拟随机数生成器,为 Guest 提供高安全性随机数(用于加密、密钥生成) |
| virtio-balloon | 5 | 内存气球设备,动态调整 Guest 内存分配(平衡多虚拟机内存资源) |
| virtio-9p | 9 | 虚拟文件系统设备,实现 Guest 与 Host 之间的文件共享(支持 POSIX 接口) |
| virtio-rpmsg | 7 | 远程处理器消息传递设备,用于 Guest 与 Host 侧远程处理器的通信 |
| virtio-scsi | 8 | 虚拟 SCSI 设备,支持多存储设备挂载与 RAID 配置(适用于企业级存储场景) |
| virtio-gpu | 16 | 虚拟 GPU 设备,实现图形硬件加速(支持 3D 渲染、视频解码) |
| virtio-input | 18 | 虚拟输入设备,模拟键盘、鼠标、触控屏(对接 Guest 输入子系统) |
| virtio-vsock | 19 | 虚拟套接字设备,实现 Guest 与 Host / 其他 Guest 之间的高效进程间通信 |
| virtio-crypto | 20 | 虚拟加密设备,提供加解密、哈希、签名等硬件加速(提升 Guest 安全计算性能) |
| virtio-caif | 12 | 移动网络接口设备,适配 CAIF 协议(用于嵌入式移动虚拟化场景) |
| virtio-rproc-serial | 11 | 远程处理器串行链路设备,实现 Guest 与远程处理器的串行通信 |
| virtio-input | 18 | 虚拟输入设备,支持多种输入外设的统一抽象(键盘、鼠标、游戏手柄等) |
| virtio-vdpa | 24 | 虚拟数据路径加速设备,基于 VDPA 标准实现硬件卸载(提升 I/O 吞吐量) |
| virtio-mem | 26 | 虚拟内存设备,支持 Guest 内存的热插拔与动态扩容(无需重启虚拟机) |
| virtio-iommu | 27 | 虚拟 IOMMU 设备,提供 DMA 地址转换与设备隔离(增强虚拟化安全性) |
| virtio-sound | 29 | 虚拟音频设备,支持音频输入输出(模拟扬声器、麦克风,对接 ALSA 子系统) |
| virtio-fs | 30 | 高性能虚拟文件系统,优化 Guest 与 Host 间文件共享(低延迟、高并发) |
2. 关系图核心说明
-
层级关联逻辑:
-
所有前端设备驱动均依赖
virtio 核心层,通过virtio_bus完成与virtio_device的匹配,借助virtqueue/vring实现数据传输。 -
后端驱动与前端驱动一一对应,通过 Hypervisor(KVM/QEMU)管理共享内存,完成 Guest 请求的物理硬件适配或 Host 子系统对接。
-
共享内存(
vring底层)是所有设备驱动的通用通信载体,避免跨层数据拷贝,保证 I/O 性能。
-
-
设备驱动特性:
-
部分设备驱动默认绑定多队列(如
virtio-net含接收 / 发送 2 个队列,virtio-scsi支持多 LUN 队列),关系图中已隐含队列挂载逻辑。 -
设备驱动均遵循
virtio 特性协商机制,可动态启用高级功能(如virtio-crypto支持多种加密算法协商,virtio-gpu支持 3D 加速协商)。
-
3. Virtio 官方标准规范链接与其他资料
3.1 OASIS Virtio 技术委员会官方网站
-
最新标准 (V1.3): https://docs.oasis-open.org/virtio/virtio/v1.3/virtio-v1.3.html
-
标准 PDF 下载: https://docs.oasis-open.org/virtio/virtio/v1.3/virtio-v1.3.pdf
-
标准 GitHub 源码: https://github.com/oasis-tcs/virtio-spec
其他版本标准链接:
-
V1.2: https://docs.oasis-open.org/virtio/virtio/v1.2/virtio-v1.2.html
-
V1.1: https://docs.oasis-open.org/virtio/virtio/v1.1/virtio-v1.1.html
-
V1.0: https://docs.oasis-open.org/virtio/virtio/v1.0/virtio-v1.0.html
3.2 Linux 内核中的 Virtio 官方文档
Linux 内核文档:
-
Virtio 概述: https://docs.kernel.org/driver-api/virtio/virtio.html
-
编写 Virtio 驱动: https://docs.kernel.org/driver-api/virtio/writing_virtio_drivers.html
-
内核源码中的 Virtio 头文件: https://github.com/torvalds/linux/tree/master/include/linux/virtio.h
3.3 Virtio Windows 驱动官方链接
Virtio-Win 官方仓库:
-
Virtio-Win ISO 下载: https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/virtio-win.iso
-
GitHub 源码: https://github.com/virtio-win/kvm-guest-drivers-windows
重要说明:
-
唯一官方标准机构: OASIS 开放标准联盟的 Virtio 技术委员会 (https://www.oasis-open.org/committees/virtio/) 是 Virtio 标准的唯一官方维护者
-
非官方网站注意: 网络上存在多个以 "virtio.org"、"virtio.com" 等命名的网站,但这些并非 Virtio 标准的官方网站
-
实现 vs 标准: Linux 内核 (https://www.kernel.org) 和 Virtio-Win 是 Virtio 标准的官方实现,而非标准本身
1876

被折叠的 条评论
为什么被折叠?



