QEMU文档之设备模拟

"QEMU支持多种设备的模拟,包括网卡、USB设备和SoC等。设备前端是指设备如何呈现给虚拟机,通常通过"--device"选项指定。设备总线描述了设备的连接方式,如PCI总线。设备后端处理模拟设备的数据,如"--chardev"和"--blockdev"。直通设备允许虚拟机直接访问物理硬件,提供更高效的性能。"
摘要由CSDN通过智能技术生成

1 设备模拟

        QEMU支持大量设备的模拟,包括从外设如网卡、USB设备到片上集成系统SoC。这些设备的配置通常比较混乱,因此本文档能够帮助对QEMU中描述设备的一些术语作简单理解。

2 通常术语

2.1 设备前端

        一个设备前端通常为一个设备是如何被呈现给guest。呈现的设备类型应该与guest OS希望看到的硬件匹配。所有设备都可以通过"--device"命令行选项指明。在QEMU执行命令选项"--device help"将列出所有支持的设备。使用命令行"--device fool,help"将列出该设备额外有用的配置。

        通常前端与后端成对,这描述了host中的资源是如何在模拟中被用到。

2.2 设备总线

        大多数设备都存在于一些总线上。依赖于平台类型,你选择一些自动创建的总线(“-M foo”)。在大多数情况下一个设备连接的总线可以被推测出来,比如PCI设备通常被自动分配给第一个PCI总线的下一个空闲地址。但是在复杂的配置中你可以明确的指定该设备连接的哪个总线("bus=ID")以及它使用的哪个地址("addr=N")。

        一些设备,比如PCI SCSI host控制器,将增加一些额外的总线到其他设备连接的系统中。设备假定关系链如下所示:

--device foo,bus=pci.0,addr=0,id=foo
--device bar,bus=foo.0,addr=1,id=baz

        这是一个bar设备(ID为baz),它联接到第一个foo总线(foo.0),地址为1。foo设备提供了foo.0总线,同时也联接到第一个PCI总线(pci.0)。

2.3 设备后端

        后端描述来自模拟设备的数据是如何被QEMU处理的。后端的配置通常为模拟设备的特定的。比如串行设备将以"--chardev"为后备,它间接将数据发给一个文件或socket或其他系统。存储设备由"--blockdev"处理,它指明了块是如何处理的,比如保存在qcow2文件或访问一个raw host硬盘分区。后端有时能够被像snapshot一样实现。

        当后端的选择对guest是透明的时,有一些场景如果后端不能支持它,特性不会被报告给guest。

2.4 直通设备

        直通设备为可以直接访问到真实硬件的设备 。这可以简单的将一个USB设备从host系统上导出给guest或将PCI插槽上的音频卡给guest上使用。

翻译文档:

QEMU: docs/system/device-emulation.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值