计算机设备、虚拟化加速设备、数据传输方法及存储介质技术

技术编号:28373399 阅读:21 留言:0更新日期:2021-05-08 00:00
本申请实施例提供一种计算机设备、虚拟化加速设备、数据传输方法及存储介质。在本申请实施例中,为物理机部署虚拟化加速设备,物理机与虚拟化加速设备通过高速串行总线互联,借助于虚拟化加速设备可对串口设备进行虚拟化,即在虚拟化加速设备上实现面向物理机的虚拟化的串口设备,基于此,物理机可通过该虚拟化的串口设备实现串口数据的收发,对物理机来说,只需通过高速串行总线将数据传输至虚拟化的串口设备即可,后续传输动作由虚拟化加速设备完成,借助于高速串行总线在传输速度上的优势,可大大提高物理机串口数据传输的速率,有利于提高物理机CPU的使用率,保证物理机服务性能的稳定性。

【技术实现步骤摘要】
计算机设备、虚拟化加速设备、数据传输方法及存储介质
本申请涉及计算机
,尤其涉及一种计算机设备、虚拟化加速设备、数据传输方法及存储介质。
技术介绍
通用异步收发传输器(UniversalAsynchronousReceiver/Transmitter,UART)是串口收发的逻辑电路,通常用于嵌入式系统,负责实现其所在物理机与外部设备之间的异步通信。在物理机运行过程中,可以通过UART输出一些信息,例如系统日志等。但是,UART是一种低速数据通信协议,其数据输出速率较慢,尤其是在UART输出数据会触发CPU关中断的情况下,还会导致CPU关中断时间较长,降低CPU使用率。
技术实现思路
本申请的多个方面提供一种计算机设备、虚拟化加速设备、数据传输方法及存储介质,用以提高CPU的使用率,保证物理机服务性能的稳定性。本申请实施例提供一种计算机设备,包括:物理机和虚拟化加速设备;虚拟化加速设备通过高速串行总线与物理机连接;虚拟化加速设备上实现有面向物理机的虚拟化的串口设备,用于配合物理机进行串口数据的收发;物理机,用于识别虚拟化的串口设备,并通过虚拟化的串口设备进行串口数据的收发。本申请实施例还提供一种虚拟化加速设备,包括:高速串行总线和面向物理机实现的虚拟化的串口设备;所述虚拟化加速设备通过所述高速串行总线与所述物理机连接;以及所述虚拟化的串口设备,用于在所述虚拟化加速设备通过所述高速串行总线与所述物理机连接的情况下,配合所述物理机进行串口数据的收发。本申请实施例还提供一种物理机,包括:存储器和处理器;存储器,用于存储计算机程序;处理器,与存储器耦合,用于执行计算机程序,以用于:识别虚拟化的串口设备,并通过虚拟化的串口设备进行串口数据的收发;其中,虚拟化的串口设备是在与物理机通过高速串行总线连接的虚拟化加速设备上实现的。本申请实施例还提供一种数据传输方法,适用于虚拟化加速设备,在虚拟化加速设备上实现有面向物理机的虚拟化的串口设备,方法包括:接收物理机通过虚拟化的串口设备发送的第一串口数据,并将第一串口数据输出;或者接收来自外部的第二串口数据,并通过虚拟化串口设备将第二串口数据发送给物理机;其中,虚拟化加速设备与物理机通过高速串行总线连接。本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当计算机程序被处理器执行时,致使处理器实现本申请实施例提供的数据传输方法中的步骤。本申请实施例还提供一种计算机程序产品,包括计算机程序/指令,当计算机程序/指令被处理器执行时,致使处理器实现本申请实施例提供的数据传输方法中的步骤。在本申请实施例中,为物理机部署虚拟化加速设备,物理机与虚拟化加速设备通过高速串行总线互联,借助于虚拟化加速设备可对串口设备进行虚拟化,即在虚拟化加速设备上实现面向物理机的虚拟化的串口设备,基于此,物理机可通过该虚拟化的串口设备实现串口数据的收发,对物理机来说,只需通过高速串行总线将数据传输至虚拟化的串口设备即可,后续传输动作由虚拟化加速设备完成,借助于高速串行总线在传输速度上的优势,可大大提高物理机进行串口数据传输的速率,尤其是在传输串口数据时会触发CPU关中断的情况下大大缩短物理机因为传输串口数据而引起的关中断的时间窗口,有利于提高物理机CPU的使用率,保证物理机服务性能的稳定性。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1a为本申请示例性实施例提供的一种计算机设备的结构示意图;图1b为本申请示例性实施例提供的另一种计算机设备的结构示意图;图1c为本申请示例性实施例提供的又一种计算机设备的结构示意图;图2为本申请示例性实施例提供的再一种计算机设备的结构示意图;图3为本申请示例性实施例提供的一种数据传输方法的流程示意图;图4为本申请示例性实施例提供的一种物理机的结构示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。以下结合附图,详细说明本申请各实施例提供的技术方案。图1a为本申请示例性实施例提供的一种计算机设备的结构示意图。如图1a所示,该计算机设备100至少包括:物理机10和虚拟化加速设备20。在本实施例中,并不对物理机10的设备形态进行限制,可以是任何具有一定计算、存储和通信能力的实体设备,例如可以是台式电脑、笔记本电脑、智能手机或IOT设备等终端设备,也可以是常规服务器、主机、服务器阵列等服务端设备。另外,本实施例也不对物理机10的实现结构进行限制,可以包括处理器、内存、网卡芯片、IO总线、音视频组件等内部组件。其中,物理机10还可以包括硬盘、SSD卡等非易失性存储资源,当然,物理机10也可以不包括硬盘、SSD卡等非易失性存储资源,而是借助于虚拟化加速设备20实现存储资源的虚拟化,对接云盘、网络附属存储设备(NetWorkAttachedStorage,NAS)等云上存储资源。除上述内部组件之外,物理机10上还可以运行操作系统(OperatingSystem,OS)、一个或多个应用程序等,其中,OS、应用程序以及相关程序数据等可存储在物理机10本地的非易失性存储资源或云上存储资源中。进一步,本实施例的物理机10还可以包括一些外部设备,例如键盘、鼠标、输入笔、打印机、显示器等。需要说明的是,物理机10所包含的内部组件或外部设备,例如音视频组件、显示器等,会因为设备形态的不同而有所不同。例如,如果物理机10为终端设备,则可以包含音视频组件、显示器等,如果物理机10是服务端设备,则可以不包含音视频组件、显示器等。在本实施例中,虚拟化加速设备20是一款可以实现虚拟化技术的设备,且可以帮助与其互联的物理机10实现至少部分虚拟化功能,即物理机10可以将部分或全部虚拟化功能卸载到虚拟化加速设备20上,从而获得性能上的加速。本实施例并不限定虚拟化加速设备20的实现形态,其实现形态可以是板卡或芯片。如图1a所示,虚拟化加速设备20具有对外接口,例如高速串行总线203,包括但不限于:外设部件互连标准(PeripheralComponentInterconnect)总线、外设部件互联扩展总线标准(PeripheralComponentInterconnectExpress,PCIE)总线。可选地,如图1a所示,该虚拟化加速设备20具有自己的计算资源,例如处理器201,其中,处理器201可以是CPU、GPU、ASIC芯片或SOC芯片等,对此不做限定。可选地,虚拟化加速设备20还可以有自己的存储资源,例如可以包括内存、硬盘等本地存储资源,也可以包括云盘、NAS等云存储资本文档来自技高网...

【技术保护点】
1.一种计算机设备,其特征在于,包括:物理机和虚拟化加速设备;所述虚拟化加速设备通过高速串行总线与所述物理机连接;/n所述虚拟化加速设备上实现有面向所述物理机的虚拟化的串口设备,用于配合所述物理机进行串口数据的收发;/n所述物理机,用于识别所述虚拟化的串口设备,并通过所述虚拟化的串口设备进行串口数据的收发。/n

【技术特征摘要】
1.一种计算机设备,其特征在于,包括:物理机和虚拟化加速设备;所述虚拟化加速设备通过高速串行总线与所述物理机连接;
所述虚拟化加速设备上实现有面向所述物理机的虚拟化的串口设备,用于配合所述物理机进行串口数据的收发;
所述物理机,用于识别所述虚拟化的串口设备,并通过所述虚拟化的串口设备进行串口数据的收发。


2.根据权利要求1所述的设备,其特征在于,在所述虚拟化加速设备上配置串口设备所需的多个寄存器,并将所述多个寄存器映射到所述虚拟化加速设备的配置空间中,以实现虚拟化的串口设备。


3.根据权利要求2所述的设备,其特征在于,所述物理机具体用于:对所述高速串行总线上的设备进行枚举,在发现所述虚拟化加速设备的情况下,根据所述配置空间中至少部分寄存器的值,识别到所述虚拟化的串口设备。


4.根据权利要求3所述的设备,其特征在于,所述物理机还用于:
在首次识别到所述虚拟化的串口设备时,为所述虚拟化的串口设备命名,并修改操作系统中串口输出参数中的串口名称为所述虚拟化的串口设备的名称。


5.根据权利要求2所述的设备,其特征在于,所述虚拟化加速设备包括:处理器和内存缓存;所述内存缓存,用于缓存所述物理机通过所述虚拟化的串口设备进行收发的串口数据;
所述处理器,用于从所述内存缓存中读取所述物理机经所述虚拟化的串口设备写入的第一串口数据并输出,或向所述内存缓存数据写入所述物理机需要接收的第二串口数据,以供所述虚拟化的串口设备读取并发送给所述物理机。


6.根据权利要求5所述的设备,其特征在于,所述多个寄存器至少包括:发送保持寄存器THR和线路状态寄存器LSR;
所述物理机具体用于:通过所述高速串行总线向THR写入第一串口数据;
所述虚拟化的串口设备,用于将THR中的第一串口数据输出至所述内存缓存中,并将LSR中的THR状态位置1。


7.根据权利要求5所述的设备,其特征在于,所述多个寄存器至少包括:接收缓冲寄存器RBR和线路状态寄存器LSR;
所述虚拟化的串口设备,用于将从所述内存缓存中读取的第二串口数据写入RBR,并将LSR的数据准备状态位置1,以及在所述第二串口数据被读取完毕后将所述LSR的数据准备状态位置0;
所述物理机具体用于:在检测到LSR的数据准备状态位置1时,通过所述高速串行总线从RBR中读取所述第二串口数据。


8.根据权利要求5所述的设备,其特征在于,所述虚拟化加速设备包括可编程逻辑器件和第一处理芯片;所述虚拟化的串口设备位于所述可编程逻辑器件上,所述处理器和内存缓存位于所述第一处理芯片上。


9.根据权利要求8所述的设备,其特征在于,所述可编程逻辑器件为现场可编程逻辑门阵列FPGA或复杂可编程逻辑器件CPLD;所述第一处理芯片为专用集成电路ASIC芯片或系统级芯片SOC。


10.根据权利要求5所述的设备,其特征在于,所述虚拟化加速设备包括第二处理芯片;所述虚拟化的串口设备、所述处理器和所述和内存缓存均位于所述第二处理芯片上。


11.根据权利要求10所述的设备,其特征在于,所述第二处理芯片为ASIC芯片或SOC。


12.根据权利要求1-11任一项所述的设备,其特征在于,所述高速串行总线为外设部件互连标准PCI总线或外设部件互联扩展总线标准PCIE总线。


13.一种虚拟化加速设备,其特征在于,包括:高速串行总线和面向物理机实现的虚拟化的串口设备;所述虚拟化加速设备通过所述高速串行总线与所述物理机连接;以及所述虚拟化的串口设备,用于在所述虚拟化加速设备通过所述高速串行总线与所述物理机连接的情况下,配合所述物理机进行串口数据的收发。


14.根据权利要求13所述的设备,其特征在于,还包括:处理器;所述处理器用于,在所述虚拟化加速设备上实现面向物理机的虚拟化的串口设备,并配合所述物理机通...

【专利技术属性】
技术研发人员:吴斌斌张献涛傅俊康文敢任晋奎
申请(专利权)人:阿里云计算有限公司
类型:发明
国别省市:浙江;33

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

1