当前位置: 首页 > 专利查询>英特尔公司专利>正文

开启虚拟机的应用处理器制造技术

技术编号:18465920 阅读:47 留言:0更新日期:2018-07-18 15:58
本文公开了与虚拟机应用处理器启动相关联的装置、方法和存储介质。在实施例中,用于计算的装置可以包括多个处理器核心;以及OS的多个OS模块。OS模块可以包括BSP模块和AP模块。BSP模块可以被配置为在VM被启动时将VM的AP的开始状态写入存储区域;并且AP模块可以被配置为在开始状态处直接以保护执行模式来开启AP,而无需首先经过实执行模式。可以描述和/或要求保护其他实施例。

Open the application processor of the virtual machine

The device, method and storage medium associated with the boot of the virtual machine application processor are disclosed in this paper. In the embodiment, the device for computing can include a plurality of processor cores, and a plurality of OS modules of the OS. The OS module can include the BSP module and the AP module. The BSP module can be configured to write the starting state of the AP of the VM to the storage area when the VM is started; and the AP module can be configured to open the AP directly at the start state to protect the execution mode without first passing the actual execution mode. Other embodiments can be described and / or required to be protected.

【技术实现步骤摘要】
【国外来华专利技术】开启虚拟机的应用处理器相关申请本申请要求于2015年12月21日提交的题为“STARTINGAPPLICATIONPROCESSORSOFAVIRTUALMACHINE”的美国专利申请14/976,990的优先权。
本公开涉及计算领域。更具体地,本公开涉及开启虚拟机的应用处理器。
技术介绍
本文提供的背景描述是出于总体上呈现本公开的上下文的目的。除非在本文中另有说明,否则本部分中描述的材料不是本申请中的权利要求的现有技术,并且不因包含在本部分中而被认为是现有技术。典型地,在启动虚拟机(VM)期间,VM的客体操作系统(OS)首先引导VM的虚拟引导启动(bootstrap)处理器(BSP),BSP继而以指定的次序按顺序引导VM的所有虚拟应用处理器(AP)。对于Intelx86执行环境,虚拟BSP(下文中简称为BSP)发送INIT-SIPI-SIPIIPI序列以开启虚拟AP(下文中简称为AP)。每个唤醒的AP将在x86实模式下开始执行,并且随后切换到保护模式,例如,32位保护模式。因此,要求虚拟机监视器(VMM)(也称为管理程序)来支持AP启动期间的实模式执行,这增加了VMM的复杂度。(INIT=初始化,IPI=处理器间中断,SIPI=启动IPI。)附图说明通过以下具体实施方式,结合附图,将容易理解实施例。为了有助于本说明书,相同的附图标记表示相同的结构元素。在附图的图中通过示例的方式而非通过限制的方式来说明实施例。图1示出了根据各种实施例的具有本公开的虚拟机应用处理器启动技术的计算设备。图2示出了根据各种实施例的BSP启动模块的示例过程。图3示出了根据各种实施例的VMM的示例过程。图4示出了根据各种实施例的AP启动模块的示例过程。图5示出了根据各种实施例的适合用于实施本公开的方面的示例计算机系统。图6示出了根据各种实施例的具有用于实施参照图2-4描述的方法的指令的存储介质。具体实施方式本文公开了与虚拟机应用处理器启动相关联的装置、方法和存储介质。在实施例中,用于计算的装置可以包括多个处理器核心;以及操作系统的多个操作系统模块。操作系统模块可以包括:BSP启动模块,其由多个处理器核心中的被选择作为VM的BSP的第一处理器核心在VM被启动时进行操作,以将VM的AP的开始状态写入存储区域;以及AP启动模块,其由多个处理器核心中的被选择作为AP的第二处理器核心进行操作,以在开始状态处直接以保护执行模式来开启AP,而无需首先经过实执行模式。在下面的具体实施方式中,参考形成其一部分的附图,在附图中相同的附图标记始终表示相同的部分,并且附图通过可以实施的说明性实施例的方式示出。应该理解,在不脱离本公开的范围的情况下可以利用其他实施例并且可以进行结构或逻辑改变。因此,以下具体实施方式不应被视为具有限制意义,并且实施例的范围由所附权利要求及其等同物限定。在所附说明书中公开了本公开的方面。可以在不脱离本公开的精神或范围的情况下设计本公开的替代实施例及其等同物。应该注意,下面公开的相同元素在附图中由相同的附图标记指示。各种操作可以以最有助于理解所要求保护的主题的方式依次描述为多个离散的动作或操作。然而,描述的次序不应被解释为暗指这些操作必须是次序相关的。特别地,这些操作可以不按照呈现的次序执行。所描述的操作可以以与所描述的实施例不同的次序来执行。在附加实施例中可以执行各种附加操作和/或可以省略所描述的操作。出于本公开的目的,短语“A和/或B”意指(A)、(B)或(A和B)。出于本公开的目的,短语“A、B和/或C”意指(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或(A、B和C)。说明书可以使用短语“在一个实施例中”或“在实施例中”,其可以各自指代相同或不同实施例中的一个或多个。此外,如关于本公开的实施例使用的术语“包括”、“包含”、“具有”等是同义的。如本文所使用的,术语“模块”可以指代以下各项,是以下各项的一部分或包括以下各项:专用集成电路(ASIC)、电子电路、执行一个或多个软件或固件程序的(共享、专用或群组)处理器和/或(共享、专用或群组)存储器、组合逻辑电路和/或提供所描述的功能的其他合适的组件。现在参考图1,其中示出了根据各种实施例的具有本公开的虚拟机应用处理器启动技术的计算设备。如所示出的,在实施例中,计算设备100可以包括如所示出地彼此可操作地耦合的硬件101、固件(FW)/基本输入/输出服务(BIOS)106、VMM120和一个或多个VM122。硬件101可以包括具有多个处理器核心的一个或多个处理器102。VM122可以包括虚拟BSP111和多个虚拟AP110,其中虚拟BSP111映射到处理器102的处理器核心中的选定的一个核心,多个虚拟AP110映射到处理器102的处理器核心中的选定的对应核心。VM122还可以包括OS112和多个应用114。OS112可以包括多个服务和/或实用程序130,其可以包括BSP启动模块132和AP启动模块134。应用114可以是本领域中已知的任何应用。如下面将更详细地描述的,BSP启动模块132、AP启动模块134和VMM130可以与本公开的虚拟机AP启动技术合并,以在保护执行模式下直接开启AP110而无需首先经过实执行模式。与应用执行飞地管理有关的这些方面和其他方面将在下面参照图2-4进一步描述。(多个)处理器102可以是本领域已知的多个处理器中的任何一个,其具有一个或多个处理器核心。在实施例中,硬件101还可以包括存储器104、I/O设备108或其他元件(未示出)。存储器104可以是适用于存储数据的、本领域中任何已知的易失性或非易失性存储器。存储器104可以包括高速缓冲存储器和系统存储器的层级。高速缓存和系统存储器两者都可以分别组织成高速缓存页和存储器页。I/O设备108的示例可以包括诸如以太网、WiFi、3G/4G、近场通信、通用串行总线(USB)等的通信或联网接口,诸如固态驱动器、磁性驱动器和/或光学驱动器的存储设备,诸如键盘、鼠标、触敏屏幕等的输入设备以及诸如显示设备、打印机等的输出设备。FW/BIOS106可以是本领域已知的多种FW/BIOS中的任何一种。除了虚拟机应用处理器启动技术之外,OS112同样可以是本领域已知的多种OS中的任何一种,例如,来自公司的WindowsOS。应用114同样可以是本领域已知的多种应用中的任何一种。现在参考图2,其中示出了根据各种实施例的BSP模块的示例过程。如所示出的,过程200可以包括在框202-208处执行的操作。框202-208处的操作可以例如由图1的BSP模块132来执行,由映射到处理器102的处理器核心中的选定的一个处理器核心的虚拟BSP111来操作。过程200可以在框202处开始。在框202处,可以对是否仍然存在更多要开启以用于正在开启的VM的AP进行确定。该确定可以例如由BSP模块132在VM122启动时针对由OS112进行的引导来执行。如果仍然存在更多的AP要开启,则在框204处,可以建立要开启的下一AP的启动状态。在实施例中,要开启的下一AP的启动状态可以在VM的BSP的通用寄存器中建立。启动状态可以包括启动时的各种执行控制值,例如,下一个指令指针、堆栈指针值、存储器参数等。在实施例中,例本文档来自技高网...

【技术保护点】
1.一种用于计算的装置,包括:多个处理器核心;以及操作系统的多个操作系统模块,其包括:引导启动处理器启动模块,其由所述多个处理器核心中的被选择作为虚拟机的引导启动处理器的第一处理器核心在所述虚拟机被启动时进行操作,以将所述虚拟机的应用处理器的开始状态写入存储区域;以及应用处理器启动模块,其由所述多个处理器核心中的被选择作为所述应用处理器的第二处理器核心进行操作,以在所述开始状态处直接以保护执行模式来开启所述应用处理器,而无需首先经过实执行模式。

【技术特征摘要】
【国外来华专利技术】2015.12.21 US 14/976,9901.一种用于计算的装置,包括:多个处理器核心;以及操作系统的多个操作系统模块,其包括:引导启动处理器启动模块,其由所述多个处理器核心中的被选择作为虚拟机的引导启动处理器的第一处理器核心在所述虚拟机被启动时进行操作,以将所述虚拟机的应用处理器的开始状态写入存储区域;以及应用处理器启动模块,其由所述多个处理器核心中的被选择作为所述应用处理器的第二处理器核心进行操作,以在所述开始状态处直接以保护执行模式来开启所述应用处理器,而无需首先经过实执行模式。2.根据权利要求1所述的装置,其中,所述引导启动处理器启动模块在将所述应用处理器的开始状态写入所述存储区域时,还将执行控制转移到所述装置的虚拟机管理器。3.根据权利要求2所述的装置,其中,对执行控制的所述转移包括向所述虚拟机管理器明确地或隐含地提供所述存储区域的位置。4.根据权利要求2所述的装置,其中,所述存储区域是所述引导启动处理器的控制寄存器,并且所述执行控制是经由来自所述控制寄存器的陷阱而转移到所述虚拟机管理器的。5.根据权利要求2-4中的任一项所述的装置,还包括所述虚拟机管理器,其中,所述虚拟机管理器由所述一个或多个处理器核心进行操作,以从所述存储区域中取回所述应用的开始状态,将所述应用处理器的开始状态编程到所述应用处理器可访问的所述虚拟机的控制结构中,并且在接收到所述执行控制时将所述应用处理器设置为在被编程到所述控制结构中的所述开始状态处开始执行。6.根据权利要求5所述的装置,其中,所述应用处理器启动模块还用于:利用存储器分页来直接以所述保护执行模式开启所述应用处理器。7.根据权利要求5所述的装置,其中,所述应用处理器启动模块还用于:初始化所述应用处理器,并且在完成所述初始化时用信号通知所述引导启动处理器启动模块。8.根据权利要求7所述的装置,其中,所述引导启动处理器启动模块还用于:在执行另一次将所述虚拟机的另一应用处理器的另一开始状态写入所述存储区域之前,等待完成信号。9.一种用于计算的方法,包括:在虚拟机被启动时,由引导启动处理器启动模块将所述虚拟机的应用处理器的开始状态写入装置的存储区域,所述引导启动处理器启动模块由所述装置的多个处理器核心中的被选择作为所述虚拟机的引导启动处理器的第一处理器核心进行操作;以及由应用处理器启动模块在所述开始状态处直接以保护执行模式来开启所述应用处理器,而无需首先经过实执行模式,所述应用处理器启动模块由所述多个处理器核心中的被选择作为所述应用处理器的第二处理器核心进行操作。10.根据权利要求9所述的方法,还包括:在将所述应用处理器的开始状态写入所述存储区域时,由所述引导启动处理器启动模块将执行控制转移到所述装置的虚拟机管理器。11.根据权利要求10所述的方法,其中,对执行控制进行转移包括向所述虚拟机管理器明确地或隐含地提供所述存储区域的位置。12.根据权利要求...

【专利技术属性】
技术研发人员:A·蒂雅加拉贾G·康纳S·杰亚辛格S·梅赫塔M·J·亚加西亚
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1