一种服务器、资源管理方法及虚拟机管理器的制造方法_2

文档序号:9887451阅读:来源:国知局

[0039]本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
[0040]本申请实施例中,服务器包括N类物理处理器核心;控制器,用于根据所述N类物理处理器核心的种类部署M个虚拟机管理器,每个虚拟机管理器用于管理一个物理处理器核心区,每个所述物理处理器核心区属于所述N类物理处理器中核心的一类。因为每个虚拟机管理器只管理N类物理处理器核心的一类,所以管理的范围有限,如此可以降低每个虚拟机管理器的内部实现复杂度和性能损耗。而且本实施例中的方案,只需要简单的添加虚拟机管理器的数量来进行管理,就可以满足单台服务器的内部处理器核心的不断增多的情况,所以具有良好的扩展性。
【附图说明】
[0041]图1为本申请实施例提供的一种服务器的结构框图;
[0042]图2为本申请实施例中服务器的处理器核心的分区示意图;
[0043]图3为本申请实施例中物理处理器核心的空间划分示意图;
[0044]图4为本申请实施例提供的一种资源管理方法的流程图;
[0045]图5a-图5b为本申请实施例中高级可编程中断控制器的配置示意图;
[0046]图6为本申请实施例提供的一种虚拟机管理器的结构框图。
【具体实施方式】
[0047]本申请实施例提供一种服务器、资源管理方法及虚拟机管理器,用以解决现有技术中的虚拟机管理器的实现复杂度和性能损耗较高的技术问题。
[0048]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0049]本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另夕卜,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
[0050]下面结合附图对本申请优选的实施方式进行详细说明。
[0051]请参考图1所示,为本申请实施例提供的一种服务器的结构框图。如图1所示,该服务器包括:N类物理处理器核心,例如处理器核心区101属于轻量级(light-weight)的处理器核心区。处理器核心区102属于重量级(heavy-weight)的处理器核心区。处理器核心区103属于加速器型的处理器核心区。其中,N为大于I的正整数。该服务器还包括存储器104和控制器105。N类物理处理器核心具体可以是通用的中央处理器(CPU)。存储器104的数量可以是一个或多个。存储器104可以包括只读存储器(英文:Read OnlyMemory,简称:R0M)、随机存取存储器(英文:Random Access Memory,简称:RAM)和磁盘存储器。控制器105具体例如是基本输入输出系统(英文:Basic Input Output System)芯片。存储器104、控制器105通过总线与N类处理器核心相连接。
[0052]存储器104中可以存储指令。N类处理器核心和控制器105可以执行存储器104中存储的指令。
[0053]控制器105用于根据N类物理处理器核心的种类部署M个虚拟机管理器(hypervisor)。每个虚拟机管理器用于管理一个物理处理器核心区,并且每个物理处理器核心区属于N类物理处理器核心中的一类。其中,M为大于等于N的正整数。举例来说,假设一台众核服务器包含三类处理器核心,分别为上述的处理器核心区101、处理器核心区102和处理器核心区103。因为每个虚拟机管理器只能管理这三类处理器核心中的一类,所以需要分配三个虚拟机管理器。因此,任意两个虚拟机管理器管理的处理器核心区互不相同。在该种只根据物理处理器核心的种类部署虚拟机管理器时,虚拟机管理器的数量与物理处理器核心的种类的数量一一对应。
[0054]当然,在实际运用中,控制器105还可以参考其他因素来部署虚拟机管理器。例如:控制器105具体用于:根据N类物理处理器的种类和同一种类的处理器核心(Core)之间的互联类型部署M个虚拟机管理器。其中,同一种类的处理器核心之间的互联类型例如是核心高速缓存器(cache) —致性。在实际运用中,处理器核心之间的互联类型具体还可以是其他特征,本申请不作具体限定。
[0055]举例来说,请参考图2所示,假设一台众核服务器内的处理器核心区101的两个核心区,处理器核心区1011和处理器核心区1012没有cache —致性。处理器核心区1011包括核心O至核心11,共12个处理器核心。处理器核心区1012也包括12个处理器核心。首先根据种类为处理器核心区102和处理器核心区103分别部署一个虚拟机管理器。因为处理器核心区1011和处理器核心区1012属于同一种类,所以再看这24个处理器核心之间的cache 一致性。在本实施例中,假设处理器核心区1011和处理器核心区1012没有cache —致性,所以处理器核心区1011的12个处理器核心具有cache —致性。处理器核心区1012的12个处理器核心具有cache —致性。而处理器核心区1011和处理器核心区1012的处理器核心之间不具有cache —致性。因此,分别为处理器核心区1011和处理器核心区1012各部署一个虚拟机管理器。如此一来,在本实施例中,控制器105为三种处理器核心共部署4个虚拟机管理器。
[0056]再例如:控制器105具体用于:根据N类物理处理器核心的种类、同一种类的处理器核心之间的互联类型以及同一互联类型的处理器核心的数量部署M个虚拟机管理器。
[0057]请继续参考图2所示,处理器核心区1011、处理器核心区1012和处理器核心区103内的处理器核心数量较多,所以可以再根据同一互联类型的处理器核心的数量进行部署。具体来说,可以设置一个阈值,当同一互联类型的处理器核心的数量大于阈值时,就可以根据数量再次划分核心区。举例来说,阈值为10,而处理器核心区1011的核心数量为12,所以超过阈值。因此,就再将处理器核心区1011划分为第一部分和第二部分。第一部分包含8个处理器核心。第二部分包含4个处理器核心。控制器105分别为第一部分和第二部分各部署一个虚拟机管理器。因此,在本实施例中,控制器105为三种处理器核心共部署5个虚拟机管理器。
[0058]由以上描述可以看出,本实施例中的每个虚拟机管理器管理的核心区有一定的范围,如此可以降低每个虚拟机管理器的内部实现复杂度和性能损耗。进一步,随着单台服务器的内部处理器核心的不断增多,可以简单的添加虚拟机管理器的数量来进行管理,实现良好的扩展性。
[0059]在进一步的实施例中,控制器105还用于在每个虚拟机管理器所管理的物理处理器核心区中确定部分核心区以运行对应的虚拟机管理器。
[0060]请参考图3所示,例如:确定处理器核心区1011的CoreO和Corel运行对应的虚拟机管理器。
[0061 ] 在实际运用中,上述过程可以在服务器上电初始化时或初始化之后、在加载操作系统之前执行。当虚拟机管理器运行之后,可以对其所管理的物理处理器核心区中的处理器核心进行管理。
[0062]在一实施例中,每个虚拟机管理器具体用于:根据应用的类型和/或需求分配所述管理的物理处理器核心区中的另一部分核心区以运行所述应用所寄宿的客户端操作系统;其中,另一部分核心区和部分核心区不相同。以下将详细说明虚拟机管理器进行管理的内容和实施方式。
[0063]请参考图4所示,为本申请实施例提供的一种资源管理方法的流程图。在该流程图中,以M个虚拟机管理器中的任意一个虚拟机管理器为例进行说明,其他虚拟机管理器的管理过程与该虚拟机管理器的管理过程相同。如图4所示,该方法包括:
[0064]步骤201:虚拟机管理器接收应用的部署请求;所述请求中包括所述应用的类型和/或需求;
[0065]步骤202:虚拟机管理器根据所述类型和/或需求为所述应用分配物理处理器核心区的另一部分核心区以运行所述应用的客户端操作系统。
[0066]请同时参考图3所示,虚拟机管理器接收到应用的部署请求之后,分析所述请求中的所述应用的类型和/或需求。其中,所述类型具体例如是轻量级的、重量级的或者是加速器型的。所述需求例如是保证服务质量或者是考虑经济性。举例来说,当所剩余的处理器核心资源不足时,如果需求是保证服务质量,那么就不分配,而是等到回收足够的资源再分配。如果需求是考虑经济性,那么就降低资源数进行分配,只要能够运行即可。当然,在实际运用中,所述需求还可以包括其他内容,本申请不作具体限定。
[0067]假设第一应用需要的处理器核心的类型为轻量型的且数量为4,那么虚拟机管理器就分配其处理器核心区1011的4个处理器核心(Core6、Core7、Core9和CorelO)给所述应用的客户端操作系统1,使得所述应用的客户端操作系统I在这四个处理器核心上运行。
[0068]再假设第二应用需要的处理器核心的类型为轻量型的且数量为2,那么虚拟机管理器就分配其处理器核心区1011的2个处理器核心(CoreS和Corell)给所述应用的客户端操作系统2,使得所述应用的客户端操作系统2在这两个处理器核心上运行。
[0069]鉴于每个处理器核心可能会运行虚
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1