QNX Hypervisor —— 虚拟设备

虚拟设备可以仿真一个物理设备,也可以是半虚拟化(para-virtualized)设备(没有确切对应的物理设备存在的虚拟设备)。

虚拟设备(或vdev)只存在于虚拟化环境中。它们是在虚拟机管理器层上运行的软件代码,要么仿真一个物理设备,要么提供物理设备所提供的功能,而不仿真任何特定的物理设备。

要使用vdev,客户机需要一个驱动程序,就像在非虚拟化环境中,它需要一个驱动程序来使用物理设备一样。

一个vdev可能永远不会访问物理设备,或者它可以充当一个中介,既直接响应客户机,又在客户机和物理设备之间传递请求和响应。

在虚拟机管理器系统中,虚拟机管理器在qvm进程中为托管客户机的VM提供vdev。托管在VM中的客户机接收来自虚拟设备的中断并向它发送信号,就好像它在处理物理硬件设备一样。客户机与系统上的任何物理设备没有直接通信;甚至可以不存在这种物理设备。

客户机需要为它将要使用的每个vdev提供一个设备驱动程序,就像它在非虚拟化环境中运行并访问物理设备时需要一个设备驱动程序一样。

虚拟机管理器支持以下类型的虚拟设备:

  • 仿真vdev(Emulation vdevs)

  • 半虚拟化设备(Para-virtualized devices)

注意:

如果没有QNX支持,当前的虚拟机管理器版本不支持用户创建的vdev。如果您实现的虚拟机管理器系统,需要不包含在此版本中的vdev,请联系您的QNX代表,通过QNX工程服务(QNX Engineering Services)为您编写vdev。

仿真vdev(Emulation vdevs)

仿真vdev(或简称vdev)是一种虚拟设备,它为客户机仿真实际的物理设备。以下是QNX虚拟化环境中的仿真vdev的关键特性:

  • 要使用vdev,客户机不需要知道它是在虚拟化环境中运行的。它与这些设备的交互和物理设备完全相同,并且没有迹象表明它正在工作在虚拟设备上,或者可能没有任何硬件设备被调用。

  • vdev仿真一个实际的物理设备(例如x86 pckeyboard)。事实上,有些vdev(比如pckeyboard)的存在,仅仅是因为运行在x86平台上的客户机希望它在那里。

  • 仿真的物理设备可能存在于系统上,也可能不存在于系统上。

  • 根据物理设备的类型,仿真vdev可以自己处理所有事情(例如,仿真计时器芯片vdev-timer8254),也可以充当客户机和实际物理设备(例如,vdev-ser8250)之间的中介。

  • 客户机为vdev使用的设备驱动程序,可以是与被仿真的物理设备在非虚拟化环境中运行时相同的设备驱动程序。

半虚拟化设备(Para-virtualized devices)

半虚拟化设备是一种虚拟设备。它们是运行在虚拟化管理器层中的软件代码,但是这些代码不仿真任何特定的硬件设备。

相反,半虚拟化设备提供的功能可能由非虚拟化环境中的物理设备(或多个物理设备)提供,但没有仿真一些硬件的限制。

典型的半虚拟化设备有在客户机内部(前端front-end)运行的代码和在客户机外部(后端back-end)运行的代码;例如,在客户机中运行的文件系统设备驱动程序连接到在虚拟机管理器宿主机中运行的块设备驱动程序。

半虚拟化设备的主要特征包括:

  • 要使用半虚拟化设备,客户机必须知道它是在虚拟化环境中运行的。例如,要使用virtio-net,客户机必须知道它是在一个虚拟化环境中运行的,这是因为virtio-net没有相应的物理设备(它仅作为一个半虚拟化设备存在)。

  • 不存在与半虚拟化设备完全对应的物理设备。

  • 客户机必须有适当的驱动程序和接口来使用半虚拟化设备。

半虚拟化设备需要一些初始投资(例如,编写驱动程序),但是这些设备通常比必须仿真硬件组件的vdev更有效。例如,仿真控制台终端的串口接口可能导致客户机中多次退出和返回。而virtio-console驱动程序(一个半虚拟化的串口接口)提供了相同的功能,但是在客户机中开销更少。

提示:

半虚拟化设备不是必须是VirtIO设备;VirtIO只是一个方便且当前流行的标准。

原文链接:

http://www.qnx.com/developers/docs/7.0.0/#com.qnx.doc.hypervisor.user/topic/virt/vdevs.html

QNX Hypervisor虚拟化平台调试技术》是一本介绍QNX Hypervisor虚拟化平台调试技术的PDF文件。QNX Hypervisor是一个基于QNX实时操作系统的虚拟化平台,可以将物理资源划分为多个虚拟机,提供安全、独立的运行环境。 该PDF详细介绍了QNX Hypervisor的调试技术。在虚拟化环境中,由于多个虚拟机共享物理资源,调试变得更加复杂。QNX Hypervisor虚拟化平台调试技术提供了一套全面有效的解决方案。 首先,该PDF介绍了QNX Hypervisor的调试工具和调试接口。QNX Hypervisor提供了一套完整的调试工具,包括调试器和嵌入式工具链。通过这些工具,开发人员可以对虚拟机进行调试,并监视虚拟机的运行情况。 其次,该PDF介绍了QNX Hypervisor的调试策略和方法。QNX Hypervisor虚拟化平台调试技术采用了一系列先进的调试策略和方法,包括断点调试、远程调试和时序分析。通过这些策略和方法,开发人员可以快速、准确地定位和修复虚拟机中的问题。 最后,该PDF还介绍了QNX Hypervisor的调试实例和案例分析。通过具体的实例和案例分析,开发人员可以深入了解QNX Hypervisor虚拟化平台调试技术的应用,并学习如何解决实际的调试问题。 总之,该PDF提供了关于QNX Hypervisor虚拟化平台调试技术的全面指南。无论是对于已经使用QNX Hypervisor的开发人员,还是对于对QNX Hypervisor感兴趣的读者,这本PDF都是一本很有价值的参考书。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值