分布式虚拟化系统的虚拟中断管理方法及装置制造方法及图纸

技术编号:8022268 阅读:188 留言:0更新日期:2012-11-29 04:30
本发明专利技术提供一种分布式虚拟化系统的虚拟中断管理方法及装置,该方法包括:虚拟BIOS模块在ACPI表中建立全局虚拟中断引脚与虚拟PCI设备的中断引脚的连接关系,所述全局虚拟中断引脚中的任意一个对应于属于同一个物理节点上的一个或多个虚拟PCI设备的中断引脚;所述虚拟机的操作系统获取所述ACPI表,并根据ACPI表运行为所述ACPI表中的全局虚拟中断引脚设置目标vCPU的指令;截获到所述指令的分布式虚拟机监控器,根据分布式中断引脚信息确定所述全局虚拟中断引脚对应的局部虚拟中断引脚所在的物理节点,根据指令保存该局部虚拟中断引脚与所述目标vCPU的对应关系,其中,所述目标vCPU用于处理所述局部虚拟中断引脚上的中断。

【技术实现步骤摘要】

本专利技术实施例涉及计算机技术,尤其涉及一种分布式虚拟化系统的虚拟中断管理方法及装置
技术介绍
如图IA所示,在非虚拟化环境下 ,每个外围设备互联(Peripheral ComponentInterconnect,简称PCI)设备Devi、Dev2***. Devn,在完成自己的一次工作后需要传送一次中断去告知操作系统,这是通过将该PCI设备连接到中断控制器的中断引脚来实现的,例如,连接到IO高级可编程中断控制器(I/O Advanced Programmable InterruptController,简称I0-APIC)的中断引脚。在系统启动时,基本输入输出系统(Basicinput/output System,简称BIOS)通过向内存中写入高级配置和电源管理接口(AdvancedConfiguration and Power Interface,简称ACPI)表的方式,向操作系统告知所有PCI设备的信息,包括所有PCI设备自身的中断引脚与中断控制器的中断引脚的连接关系。操作系统启动后,设置该PCI设备的中断引脚,使该PCI设备的中断传递到一个指定的物理CPU上处理。其中,ACPI表可以是差异化系统描述表(Differentiated System DescriptionTable,简称 DSDT)表。在分布式虚拟化环境下,分布式虚拟机监控器(Distributed Virtual MachineMonitor,简称DVMM)也需要模拟虚拟PCI设备的中断连接关系。首先,分布式虚拟化环境下每个物理节点的设备模型(Device Model,简称DM)在创建一个虚拟PCI设备时,会为该虚拟PCI设备分配总线号Bus和设备号Device,并确定该虚拟PCI设备自身的中断引脚号 Intx。其次,当启动虚拟机时,虚拟 BIOS (Virtual Basic Input/Output System,简称vBIOS)会通过内存中的ACPI表告知操作系统设备号为Device的虚拟PCI设备的第Intx号中断引脚,连接在全局虚拟10高级可编程中断控制器(Virtual I/0AdvancedProgrammable Interrupt Controller,简称vIO-APIC)的哪一个全局虚拟中断引脚上。最后,DVMM为虚拟机模拟全局vIO-APIC中的全局虚拟中断引脚所连接的虚拟PCI设备的中断引脚号。现有的分布式虚拟化系统中,一台虚拟机的一个全局虚拟中断引脚可能会连接到若干个物理节点中的虚拟PCI设备的中断引脚上,如图IB所示,某物理节点中设备号和中断引脚号为(0,1)的虚拟PCI设备的中断引脚与另一物理节点中设备号和中断引脚号为(8,0)的虚拟PCI设备的中断引脚同时连接在某虚拟机的第17号全局虚拟中断引脚上。那么当操作系统对该第17号全局虚拟中断引脚的进行设置时,运行设置命令的DVMM截获到操作系统对该第17号全局虚拟中断引脚的设置操作后,需要向多个物理节点发送数据包,以对连接到该第17号全局虚拟中断引脚的所有的虚拟PCI设备的中断引脚,例如(0,I)和(8,0)进行同步设置,发送同步设置的数据包。当虚拟机的一条设置指令被截获之后,它的下一条指令会在上一条指令被模拟完后才会被执行,所以模拟该设置指令的所用时间越长,虚拟机的运行速度更慢。而模拟一条设置指令需要在多个节点间进行同步设置,花费的时间更长,这种不同物理节点间的同步操作会对虚拟机性能造成很大影响。
技术实现思路
本专利技术实施例提供一种分布式虚拟化系统的虚拟中断管理方法及装置,用以解决现有分布式虚拟化系统中,由于若干个物理节点中的虚拟PCI设备连接到同一个全局虚拟中断引脚导致性能降低的缺陷。一方面,本专利技术实施例提供一种分布式虚拟化系统的虚拟中断管理方法,包括虚拟机的虚拟BIOS模块在高级配置和电源管理接口 ACPI表中建立全局虚拟中断引脚与虚拟外围设备互联PCI设备的中断引脚的连接关系,其中,所述全局虚拟中断引脚为虚拟中断引脚控制器上的一个或多个中断引脚,所述全局虚拟中断引脚中的任意一个对应于属于同一个物理节点的一个或多个所述虚拟PCI设备的中断引脚;所述虚拟中断引脚控制器是为所述虚拟机的操作系统提供的;所述虚拟机的操作系统获取所述ACPI表,根据所述ACPI表,运行为所述ACPI表中的全局虚拟中断引脚设置目标虚拟中央处理单元vCPU的指令;截获到所述指令的分布式虚拟机监控器,根据分布式中断引脚信息确定所述全局虚拟中断引脚对应的局部虚拟中断引脚所在的物理节点,所述局部虚拟中断引脚位于物理节点上并用于模拟所述全局虚拟中断引脚,所述分布式中断引脚信息包括全局虚拟中断引脚与虚拟PCI设备的中断引脚的连接关系,以及各个物理节点包括的虚拟PCI设备和局部虚拟中断引脚;所述局部虚拟中断引脚所在的物理节点上的分布式虚拟机监控器,根据所述指令保存所述局部虚拟中断引脚与所述目标VCPU的对应关系,其中,所述目标vCPU用于处理所述局部虚拟中断引脚上的中断。另一方面,本专利技术实施例提供一种分布式虚拟化系统的虚拟中断管理装置,包括虚拟机和多个部署在不同物理节点上的分布式虚拟机监控器。所述虚拟机,包括虚拟BIOS模块和操作系统;所述虚拟BIOS模块,用于在ACPI表中建立所述虚拟机上全局虚拟中断引脚与虚拟PCI设备的中断引脚的连接关系,其中所述全局虚拟中断引脚中的任意一个对应于属于同一个所述物理节点的一个或多个所述虚拟PCI设备的中断引脚;所述操作系统,用于获取所述ACPI表,根据所述ACPI表,运行为所述ACPI表中的 全局虚拟中断引脚设置目标vCPU的指令;所述多个分布式虚拟机监控器中的第一分布式虚拟机监控器,用于截获所述操作系统设置目标vCPU的指令,根据分布式中断引脚信息确定所述全局虚拟中断引脚对应的局部虚拟中断引脚所在的物理节点,所述局部虚拟中断引脚位于所述物理节点上并用于模拟所述全局虚拟中断引脚,所述分布式中断引脚信息包括全局虚拟中断引脚与虚拟PCI设备的中断引脚的连接关系,以及各个物理节点包括的虚拟PCI设备以及所述各个物理节点负责的局部虚拟中断引脚;所述多个分布式虚拟机监控器中的第二分布式虚拟机监控器,用于根据所述指令保存所述局部虚拟中断引脚与所述目标vCPU的对应关系,所述第二分布式虚拟机监控器为所述局部虚拟中断引脚所在的物理节点上的分布式虚拟机监控器。本专利技术实施例提供的分布式虚拟化系统的虚拟中断管理方法及装置,虚拟BIOS模块写入ACPI表中的一个全局虚拟中断引脚对应同一个物理节点上的局部虚拟中断引脚,即一个全局虚拟中断引脚由在同一个物理节点上的局部虚拟中断引脚去模拟,因而,操作系统在设置该全局虚拟中断引脚时,不需要向不同的节点发送同步设置的数据包,提高了分布式虚拟化系统的性能。附图说明图IA为现有技术提供的在非虚拟化环境下的PCI设备中断连接架构图;图IB为现有技术提供的在分布式虚拟化环境下的虚拟PCI设备中断连接架构图;图2为本专利技术实施例提供的一种分布式虚拟化结构;图3为本专利技术实施例提供的一种分布式虚拟化系统的虚拟中断引脚管理方法流程图;·图4为本专利技术实施例提供的虚拟PCI设备中断连接架构图;图5为本专利技术实施例提供的另一种分布式虚拟化系统的虚本文档来自技高网
...

【技术保护点】
一种分布式虚拟化系统的虚拟中断管理方法,其特征在于,包括:虚拟机的虚拟BIOS模块在高级配置和电源管理接口ACPI表中建立全局虚拟中断引脚与虚拟外围设备互联PCI设备的中断引脚的连接关系,其中,所述全局虚拟中断引脚为虚拟中断引脚控制器上的一个或多个中断引脚,所述全局虚拟中断引脚中的任意一个对应于属于同一个物理节点的一个或多个所述虚拟PCI设备的中断引脚;所述虚拟中断引脚控制器是为所述虚拟机的操作系统提供的;所述虚拟机的操作系统获取所述ACPI表,根据所述ACPI表,运行为所述ACPI表中的全局虚拟中断引脚设置目标虚拟中央处理单元vCPU的指令;截获到所述指令的分布式虚拟机监控器,根据分布式中断引脚信息确定所述全局虚拟中断引脚对应的局部虚拟中断引脚所在的物理节点,所述局部虚拟中断引脚位于物理节点上并用于模拟所述全局虚拟中断引脚,所述分布式中断引脚信息包括全局虚拟中断引脚与虚拟PCI设备的中断引脚的连接关系,以及各个物理节点包括的虚拟PCI设备和局部虚拟中断引脚;所述局部虚拟中断引脚所在的物理节点上的分布式虚拟机监控器,根据所述指令保存所述局部虚拟中断引脚与所述目标vCPU的对应关系,其中,所述目标vCPU用于处理所述局部虚拟中断引脚上的中断。...

【技术特征摘要】

【专利技术属性】
技术研发人员:王海波
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1