CN104714845A - 资源动态调整方法、装置及多内核操作系统 - Google Patents
资源动态调整方法、装置及多内核操作系统 Download PDFInfo
- Publication number
- CN104714845A CN104714845A CN201310694877.0A CN201310694877A CN104714845A CN 104714845 A CN104714845 A CN 104714845A CN 201310694877 A CN201310694877 A CN 201310694877A CN 104714845 A CN104714845 A CN 104714845A
- Authority
- CN
- China
- Prior art keywords
- operating system
- resource
- partition
- resources
- management operating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000005192 partition Methods 0.000 claims abstract description 262
- 230000005540 biological transmission Effects 0.000 claims description 16
- 230000004044 response Effects 0.000 claims description 12
- 238000012544 monitoring process Methods 0.000 claims description 10
- 238000011156 evaluation Methods 0.000 claims description 8
- 230000001105 regulatory effect Effects 0.000 abstract 3
- 238000007726 management method Methods 0.000 description 197
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 101100016034 Nicotiana tabacum APIC gene Proteins 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例提供一种资源动态调整方法、装置及多内核操作系统,本发明方法,包括:分区管理操作系统获取自身分区内的轻量级操作系统的资源调整需求信息;所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源;所述分区管理操作系统将申请的可供调整的资源分配给所述轻量级操作系统。本发明实施例,通过分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源并分配给轻量级操作系统,以解决解决多内核操作系统中系统资源无法得到有效的利用的问题。
Description
技术领域
本发明实施例涉及计算机技术,尤其涉及一种资源动态调整方法、装置及多内核操作系统。
背景技术
多内核操作系统(Manycore OS)代表了计算技术的一次创新,因多内核操作系统比单内核操作系统具有性能和效率优势,多内核操作系统将会成为被广泛采用的计算模型。
目前,在多内核操作系统中实现多操作系统已经成为研究热点。在具有众多资源(如处理器资源,内存资源,输入输出设备资源)的硬件平台上,资源供应系统是多操作系统有效利用这些物理资源的基础。图1为现有多内核操作系统的管理架构示意图,如图1所示,可以分为重量级操作系统(HeavyOS)和轻量级操作系统(Light OS),而Heavy OS又分为全局管理操作系统(Global Heavy OS)和分区管理操作系统(Nest Heavy OS)。其中,全局管理操作系统负责管理维护全局所有的操作系统(包括分区管理操作系统和轻量级操作系统)的资源,分区管理操作系统负责管理维护该分区(Nest)内的所有轻量级操作系统资源。
现有多内核操作系统中,Heavy OS在多个轻量级操作系统启动前就已经给每个轻量级操作系统分配好资源,轻量级操作系统启动后也不再进行调整资源,导致系统资源无法得到有效的利用。
发明内容
本发明实施例提供一种资源动态调整方法、装置及多内核操作系统,以实现在多内核操作系统中根据轻量级操作系统运行的情况进行动态调整资源,解决多内核操作系统中系统资源无法得到有效的利用的问题。
第一方面,本发明实施例提供一种资源动态调整方法,包括:
分区管理操作系统获取自身分区内的轻量级操作系统的资源调整需求信息;
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源;
所述分区管理操作系统将申请的可供调整的资源分配给所述轻量级操作系统。
在第一方面第一种可能实现的方式中,所述分区管理操作系统获取自身分区内的轻量级操作系统的资源调整需求信息,包括:
所述分区管理操作系统实时监控自身分区内的各轻量级操作系统资源压力,若存在轻量级操作系统超过预设的资源压力时,生成所述轻量级操作系统的资源调整需求信息;或者,
所述分区管理操作系统接收自身分区内的轻量级操作系统发送的资源调整需求信息。
根据第一方面第一种可能实现的方式,在第一方面第二种可能实现的方式中,所述分区管理操作系统接收自身分区内的轻量级操作系统发送的资源调整需求信息,包括:
所述分区管理操作系统接收自身分区内的轻量级操作系统发送的根据自身实时监控的资源压力生成的资源调整需求信息;或者,
所述分区管理操作系统接收自身分区内的轻量级操作系统发送的根据自身的应用需求生成的资源调整需求信息。
根据第一方面第一种或者第二种可能实现的方式,在第一方面第三种可能实现的方式中,所述资源压力至少包括下述一种或多种资源使用情况:
CPU利用率、内存使用率、网卡数据传输速率、磁盘平均传输速率或者平均访问延迟。
在第一方面第四种可能实现的方式中,所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源,包括:
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向所述分区管理操作系统自身分区内申请可供调整的资源;或者,
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向全局管理操作系统申请可供调整的资源;或者,
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,通过全局管理操作系统向所有其他友好分区内的分区管理操作系统申请可供调整的资源。
在第一方面第五种可能实现的方式中,所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源,包括:
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,同时向所述分区管理操作系统自身分区内、全局管理操作系统内以及通过全局管理操作系统向所有其他友好分区内的分区管理操作系统内发出申请可供调整的资源的请求,并根据基于预定义的最佳收益模型对接收到的各系统的请求响应信息的评估报告综合选择申请的可供调整的资源。
根据第一方面、第一方面第一种至第五种可能实现的方式,在第一方面第六种可能实现的方式中,所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源,包括:
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,从系统内空闲的资源中申请可供调整的资源;
若系统内空闲的资源无法满足申请的可供调整的资源,则所述分区管理操作系统向系统发送释放资源请求,并从释放的资源中申请可供调整的资源。
在第一方面第七种可能实现的方式中,所述分区管理操作系统将申请的可供调整的资源分配给所述轻量级操作系统之后,还包括:
所述分区管理操作系统向所述全局管理操作系统通告资源调整结果,以使所述全局管理操作系统对全局资源管理信息进行同步。
第二方面,本发明实施例提供一种资源动态调整装置,包括:
获取模块,配置于分区管理操作系统中,用于获取分区管理操作系统自身分区内的轻量级操作系统的资源调整需求信息;
申请资源模块,配置于分区管理操作系统中,用于根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源;
分配模块,配置于分区管理操作系统中,用于将申请的可供调整的资源分配给所述轻量级操作系统。
在第二方面第一种可能实现的方式中,所述获取模块,包括:
监控单元,用于实时监控分区管理操作系统自身分区内的各轻量级操作系统资源压力,若存在轻量级操作系统超过预设的资源压力时,生成所述轻量级操作系统的资源调整需求信息;或者,
接收单元,用于接收分区管理操作系统自身分区内的轻量级操作系统发送的资源调整需求信息。
根据第二方面第一种可能实现的方式,在第二方面第二种可能实现的方式中,所述接收单元,具体用于:
接收分区管理操作系统自身分区内的轻量级操作系统发送的根据自身实时监控的资源压力生成的资源调整需求信息;或者,
接收分区管理操作系统自身分区内的轻量级操作系统发送的根据自身的应用需求生成的资源调整需求信息。
根据第二方面第一种或者第二种可能实现的方式,在第二方面第三种可能实现的方式中,所述资源压力至少包括下述一种或多种资源使用情况:
CPU利用率、内存使用率、网卡数据传输速率、磁盘平均传输速率或者平均访问延迟。
在第二方面第四种可能实现的方式中,所述申请资源模块,具体用于:
根据所述轻量级操作系统的资源调整需求信息,向所述分区管理操作系统自身分区内申请可供调整的资源;或者,
根据所述轻量级操作系统的资源调整需求信息,向全局管理操作系统申请可供调整的资源;或者,
根据所述轻量级操作系统的资源调整需求信息,通过全局管理操作系统向所有其他友好分区内的分区管理操作系统申请可供调整的资源。
在第二方面第五种可能实现的方式中,所述申请资源模块,具体用于:
根据所述轻量级操作系统的资源调整需求信息,同时向所述分区管理操作系统自身分区内、全局管理操作系统内以及通过全局管理操作系统向所有其他友好分区内的分区管理操作系统内发出申请可供调整的资源的请求,并根据基于预定义的最佳收益模型对接收到的各系统的请求响应信息的评估报告综合选择申请的可供调整的资源。
根据第二方面、第二方面第一种至第五种可能实现的方式,在第二方面第六种可能实现的方式中,所述申请资源模块,具体用于:
根据所述轻量级操作系统的资源调整需求信息,从系统内空闲的资源中申请可供调整的资源;
若系统内空闲的资源无法满足申请的可供调整的资源,则向系统发送释放资源请求,并从释放的资源中申请可供调整的资源。
在第二方面第七种可能实现的方式中,还包括:
通告模块,用于所述分配模块将申请的可供调整的资源分配给所述轻量级操作系统之后,向所述全局管理操作系统通告资源调整结果,以使所述全局管理操作系统对全局资源管理信息进行同步。
第三方面,本发明实施例提供一种多内核操作系统,包括:全局管理操作系统、分区管理操作系统以及轻量级操作系统,其中:
所述分区管理操作系统包括第二方面,第二方面第一种至第七种可能实现方式的任意一种所述的资源动态调整装置。
本发明实施例,通过分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源并分配给轻量级操作系统,以解决解决多内核操作系统中系统资源无法得到有效的利用的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有多内核操作系统的管理架构示意图;
图2为本发明资源动态调整方法实施例一的流程图;
图3为本发明资源动态调整方法实施例二的流程图;
图4A为本发明资源动态调整方法实施例三的流程图;
图4B为图4A的一种多维度资源-性能模型图;
图5为本发明资源动态调整方法实施例四的应用场景图;
图6为本发明资源动态调整装置实施例一的结构图;
图7为本发明资源动态调整装置实施例二的结构图;
图8为本发明资源动态调整装置实施例三的结构图;
图9为本发明多内核系统实施例一的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图2为本发明资源动态调整方法实施例一的流程图,本方法的执行主体是资源动态调整装置,该装置可以置于多内核操作系统中的分区管理操作系统中。如图2所示,该方法包括:
步骤201、分区管理操作系统获取自身分区内的轻量级操作系统的资源调整需求信息;
步骤202、所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源;
步骤203、所述分区管理操作系统将申请的可供调整的资源分配给所述轻量级操作系统。
为了便于对上述实施例的理解,下面对上述步骤做进一步解释说明:
步骤201中所述的资源可以包括:处理器/内核资源,内存,输入/输出设备等轻量级操作系统运行所需的硬件资源,资源调整需求信息是轻量级操作系统需要调整目前所占用资源的变化信息,比如轻量级操作系统需要将内存从目前的1GB提升到2GB,或者需要将目前运行的内核从1个增加到2个等变化信息。
步骤202中提供可供调整的系统可以包括多内核系统中运行的所有操作系统实例,比如全局管理操作系统,分区管理操作系统或者轻量级操作系统。
需要说明的是,上述实施例中,在分层次的多内核操作系统中采用了分布式加集中式的资源管理方法。在Heavy OS层次,全局资源服务是分布式部署的,在一个Nest内,分区管理操作系统拥有Nest内的资源管理权限,采用集中式的资源管理,每个轻量级操作系统都有自己的资源管理模块,用于资源的具体调整实施。
相对于现有技术中,轻量级操作系统在创建前就已经分配好资源,在创建后无法调整资源,本发明实施例,通过分区管理操作系统根据轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源并分配给轻量级操作系统,以解决解决多内核操作系统中系统资源无法动态调整导致得不到有效的利用的问题。
图3为本发明资源动态调整方法实施例二的流程图,本实施例在上一实施例的基础上,提供一个分区管理操作系统申请资源步骤的具体实施例,如图3所示,具体包括:
步骤301、分区管理操作系统实时监控自身分区内的各轻量级操作系统资源压力,若存在轻量级操作系统超过预设的资源压力时,生成所述轻量级操作系统的资源调整需求信息;
本步骤中,具体地,所述资源压力至少包括下述一种或多种资源使用情况:
CPU利用率、内存使用率、网卡数据传输速率、磁盘平均传输速率或者平均访问延迟。
预设的资源压力是根据系统运行的效率和速度等综合因素设定的资源使用情况阈值,若存在轻量级操作系统超过预设的资源压力时,则说明需要调整资源,比如CPU利用率在30s内一直高达90%,或者内存占用率一直在90%(或缺页故障page fault频率很高),网卡数据传输速率达到9M/s(或网卡延迟达到20ms),磁盘平均传输速率达到100M/s或者平均访问延迟达到10ms等等,具体数值通常是具体策略制定的,是可调整的。
步骤302、所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向所述分区管理操作系统自身分区内申请可供调整的资源;
本步骤中,可选地,还可以包括:根据所述轻量级操作系统的资源调整需求信息,向全局管理操作系统申请可供调整的资源;或者,
根据所述轻量级操作系统的资源调整需求信息,通过全局管理操作系统向所有其他友好分区内的分区管理操作系统申请可供调整的资源。
所述友好分区,是指在为分区分配物理资源时,参考资源与应用的亲和性,也就是为该分配的资源会是适合该类应用的运行的,而且通常是拓扑接近的。比如分区A是分区B的友好分区,就是指在分区B的应用适合运行在分区A的资源上。评判指标一方面是分区A的资源适合分区B的应用的运行,另一方面是分区A的资源在拓扑距离上与分区B的资源是接近的。
具体操作时,会对每一种资源构建一种评估指标,也就是资源与应用亲和度,资源与资源的拓扑、通讯距离。
下面对上述三种申请可供调整资源的方式进行解释说明:
(1)分区管理操作系统向所述分区管理操作系统自身分区内申请可供调整的资源:由于分区管理操作系统的分区内状态监控模块会收集由轻量级操作系统上的状态监控信息(由轻量级操作系统上的实例状态监控模块进行收集),分区管理操作系统根据各个轻量级操作系统的资源使用情况(比如使用率)找出可以提供资源的轻量级操作系统。如果存在这样的轻量级操作系统,分区管理操作系统将通过强制手段(或与其实例资源管理模块协商)回收资源,然后将资源提供给目标轻量级操作系统。
(2)分区管理操作系统向全局管理操作系统申请可供调整的资源:全局管理操作系统维护着全局空闲资源,当分区管理操作系统向其申请资源时,只需要查询空闲资源的列表,如果空闲资源列表有资源,则向分区管理操作系统返回申请的资源。
(3)分区管理操作系统通过全局管理操作系统向所有其他友好分区内的分区管理操作系统申请可供调整的资源:通过全局管理操作系统中的全局状态监控信息查找资源利用率较低的分区,并向该分区管理操作系统回收部分资源提供给申请资源的分区管理操作系统。或者,分区管理操作系统通过全局管理操作系统中的全局名字服务,向所有分区管理操作系统的全局资源服务模块发送资源申请的广播。接收到资源申请的分区管理操作系统判断自身的资源使用情况,决定是否将资源租借出去,如果租借出去,该分区管理操作系统将对之前的资源申请进行响应,并且填写资源的信息(包括其状态,拓扑位置,分区使用情况等相关信息)。原分区管理操作系统在接收到资源响应请求之后,将选择一个最优先的资源进行调整。
上述三种方式,优选地的实施策略是:按照(1)、(2)和(3)的优先次序依次使用,即首先使用向所述分区管理操作系统自身分区内申请可供调整的资源;当所述分区管理操作系统自身分区内部的可用资源不能满足申请需求时,再向全局管理操作系统申请可供调整的资源;当全局管理操作系统也找不到空闲资源时,最后通过全局管理操作系统向所有其他友好分区内的分区管理操作系统申请可供调整的资源,也就是分区管理操作系统向邻近的分区广播资源租借的请求,再进一步协商资源的调整。通过这种优先次序的资源调整方法,充分考虑资源的拓扑距离(例如内核间通讯距离,设备空间的距离等))和应用亲和性等因素,尽可能优先申请调整距离接近、亲和性高的资源,使得调整后的系统资源得到进一步地优化。
步骤303、所述分区管理操作系统将申请的可供调整的资源分配给所述轻量级操作系统;
步骤304、所述分区管理操作系统向全局管理操作系统通告资源调整结果,以使所述全局管理操作系统对全局资源管理信息进行同步。
本实施例通过分区管理操作系统向所述分区管理操作系统自身的分区,全局管理操作系统或者通过全局管理操作系统向所有其他友好分区内的分区管理操作系统申请可供调整的资源,实现在多内核系统中,对系统资源的动态调整,且在调整后,通过向全局管理操作系统通告资源调整结果,使得全局管理操作系统对全局资源管理信息进行同步,以便于后续的资源调整。
图4A为本发明资源动态调整方法实施例三的流程图,本实施例在上一实施例的基础上,提供另一个分区管理操作系统申请资源步骤的具体实施例,如图4A所示,具体包括:
步骤401、分区管理操作系统接收自身分区内的轻量级操作系统发送的资源调整需求信息;
本步骤中,具体地,所述分区管理操作系统接收自身分区内的轻量级操作系统发送的资源调整需求信息,包括:
所述分区管理操作系统接收自身分区内的轻量级操作系统发送的根据自身实时监控的资源压力生成的资源调整需求信息;或者,
所述分区管理操作系统接收自身分区内的轻量级操作系统发送的根据自身的应用需求生成的资源调整需求信息,比如某个轻量级操作系统因为要执行一个特殊的程序,需要临时增加使用的内存。
此外,上述资源包括上一实施例所述的资源,在此再赘述。
步骤402、所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,同时向所述分区管理操作系统自身分区内、全局管理操作系统内以及通过全局管理操作系统向所有其他友好分区内的分区管理操作系统内发出申请可供调整的资源的请求;
步驟403、所述分区管理操作系统根据基于预定义的最佳收益模型对接收到的各系统的请求响应信息的评估报告综合选择申请的可供调整的资源;
本步骤中,预定义的最佳收益模型是通过结合一种资源-性能模型和资源的拓扑距离来构建的,包含了响应时间、资源距离、资源状态、历史性能等多维度信息。分区管理操作系统可以根据最佳收益模型计算得到的收益值的大小来选择具有最佳收益的资源调整方案。
在使用最佳收益模型之前,必须由各个Nest Heavy OS分别构建该分区上应用的资源-性能模型f:R→P。它是一种多对多的模型,一个分区在某一个时刻的资源信息状态可以用向量R(资源大小,资源利用率,资源位置,…)表示,相应的性能信息也可以用向量P(吞吐量,延迟,…)表示。当已知资源信息向量R时,通过该性能模型,就能计算出对应的性能向量P,用于进一步的收益模型的计算。
收益模型通过衡量“收益损失比”和“资源距离”来决定选取最佳方案。其值由四项参数来决定:获得资源的OS实例的收益Gain(R2~R1)=|f(R2)-f(R1)|;共享或损失资源的OS实例的损失Loss(R2~R1)=|f(R2)-f(R1)|;申请到的资源与原始资源之间的距离(访问延迟)d;可自定义的访问距离所占的比例参数α。我们可以定义收益评估值为Value=Gain(R2~R1)/Loss(R2~R1)-α*d。于是,最佳的资源调整方案可以设定为Value值最大的方案。下面对上述变量的含义做详细解释:
1、对于资源-性能关系函数f,可以采用多元的局部加权回归的方法来构建。i表示第i个样本(只对x的附近的一些样本进行选择),x表示目标值,在多维情况下表示为一个向量(比如目标的资源信息R),y表示该目标值对应的函数值,w(i)表示样本i对目标值x的横坐标加权因子,exp表示以e为低的指数,h为在θ参数下的预测值,j(x)表示选取的各个样本对目标值x的函数值(也就是性能向量P)的加权距离。θ为一个向量(在多元的情况下是一个矩阵),其表示样本i对目标值的影响。
在已有样本i=1…m中的目标是让j(x)最小,于是可以求出θ。然后将θ带入h(x),即可得到资源性能映射函数f=h(x)。
具体地,资源信息的获取比较简单,在分区管理操作系统构建分区内轻量级操作系统实例时相应的资源信息会被记录,需要使用时,相关信息可以同对资源请求的回应消息一起发送给发送资源请求的分区管理操作系统。性能信息的获取需要在分区管理操作系统和分区内轻量级操作系统部署相应的性能采集模块,分区管理操作系统定期获取分区内应用运行的性能信息。性能信息的传送也可以同对资源请求的回应消息一起发送给发送资源请求的分区管理操作系统。
2、对于访问延迟d,在异构或同构平台中可以定义如下:
(1)内核:在不在一个CPU内,一个PCI-E(设备扩展外设互联标准,全称为Peripheral Component Interconnection-Express)空间内,内核间的处理器中断(Inter-Processor Interrupt,简称IPI)距离。
(2)内存:在不在一个PCI-E空间内,内存访问延迟
(3)网卡(Network Interface Card,简称NIC):虚拟资源带宽(例如虚拟功能Virtual Function,简称VF等),在不在一个网卡内,在不在一个PCI空间内,网络访问延迟。
另一种实施方式是,简化地认为d为资源所在层次的差别:比如在同一个CPU的内核,d为0;不同CPU的内核,d为CPU所在PCI空间的拓扑层次的差值。
具体地,访问延迟d可以通过CPU的拓扑信息(BIOS或APIC table中)和PCI-E拓扑结构(PCI-E规范)获取。
3、对于访问距离所占的比例参数α,它是可以自由设定的,用来表示访问距离在收益模型中的权重,比如取值0.5。
图4B为图4A的一种多维度资源-性能模型图,如图4B所示,1:1是表示左侧某一个参数与右侧某一个指标的对应关系。
M:N是表示在建立回归函数时,可以获取多个参数与多个指标的对应关系。
图中应用程序性能可以包含多个指标,比如响应时间,吞吐率等。
步骤404、所述分区管理操作系统将申请的可供调整的资源分配给所述轻量级操作系统;
步骤405、所述分区管理操作系统向全局管理操作系统通告资源调整结果,以使所述全局管理操作系统对全局资源管理信息进行同步。
本实施例通过分区管理操作系统基于预定义的最佳收益模型,实现从所述分区管理操作系统自身分区内、全局管理操作系统内以及所有其他友好分区内的分区管理操作系统内综合选择申请可供调整的资源,使得资源能在综合因素考虑下,以最优的方式进行调整。
以上实施例中,所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源,包括:
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,从系统内空闲的资源中申请可供调整的资源;
若系统内空闲的资源无法满足申请的可供调整的资源,则所述分区管理操作系统向系统发送释放资源请求,并从释放的资源中申请可供调整的资源。
图5为本发明资源动态调整方法实施例四的应用场景图,本实施例是上述实施例的一具体应用实施例,以典型网络应用的应用程序组合Apache、JBoss和MySQL部署于一个节点内多内核操作系统RFLinux上的不同OS实例上作为例子进行解释说明。
如图5所示,每个OS实例管理自己的资源,RFLinux是一种经过修改的可以作为一个OS实例运行于多内核操作系统的Linux,也可以是其它操作系统实例,RFLinux-N是指部署于分区管理操作系统上的轻量级操作系统实例,RFLinux-G是指部署于全局管理操作系统上的操作系统实例,RFLinux-N是指部署于分区管理系统下的操作系统实例,。
通过部署镜像(monitor)的方式RFLinux-N可以收集到系统OS实例的性能数据,RFLinux-N在以下情况下开始调整轻量级操作系统的资源:
(1)OS实例资源利用率过高
(2)应用性能降低
(3)OS实例主动申请资源
当某一个OS实例(Jboss所在RFLinux)向RFLinux-N申请资源时,RFLinux-N开始调整Nest内资源分布,RFLinux-N开始查找资源利用率较低的OS实例(比如Apache所在的操作系统实例RFLinux1),并主动回收这些OS实例的部分资源,然后将这些资源分配给需要资源的OS实例(JBoss所在的操作系统实例RFLinux2)。或者,RFLinux-N可以只作为资源协商的主导角色,在其确定资源可调整之后由RFLinux1直接向RFLinux2转移资源(可以是租借,或是完全释放)。
如果RFLinux-N在Nest内没有找到合适的可提供资源的OS实例,RFLinux-N进而改向全局资源服务请求资源。全局资源服务可以提供如下表1所示的资源信息:
表1
资源Resouce | 位置Location | 大小/数目Size/Number | 延迟Latency |
如果全局资源服务没有可用资源,RFLinux-N向友好Nest申请资源,其广播自己资源请求(包括自身的位置,自身的资源使用状态,需要的最小资源),对于首先收到的资源供应的响应,RFLinux-N与该分区管理操作系统的资源管理模块发起资源协商,相互确认资源供应。然后由该分区管理操作系统将资源释放、并将资源信息发送给RFLinux-N,RFLinux-N映射该资源到自身的管理结构中,完成资源的转移后,再向全局资源服务同步资源更新信息。
图6为本发明资源动态调整装置实施例一的结构图,如图6所示,具体包括:
获取模块61,配置于分区管理操作系统中,用于获取分区管理操作系统自身分区内的轻量级操作系统的资源调整需求信息;
申请资源模块62,配置于分区管理操作系统中,用于根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源;
分配模块63,配置于分区管理操作系统中,用于将申请的可供调整的资源分配给所述轻量级操作系统。
本实施例的装置,用于执行图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图7为本发明资源动态调整装置实施例二的结构图,如图7所示,本实施例在图6所述的结构实施例的基础上,进一步地:
所述获取模块61,包括:
监控单元701,用于实时监控分区管理操作系统自身分区内的各轻量级操作系统资源压力,若存在轻量级操作系统超过预设的资源压力时,生成所述轻量级操作系统的资源调整需求信息。
进一步地,所述资源压力至少包括下述一种或多种资源使用情况:
CPU利用率、内存使用率、网卡数据传输速率、磁盘平均传输速率或者平均访问延迟。
具体地,所述申请资源模块62,具体用于:
根据所述轻量级操作系统的资源调整需求信息,向所述分区管理操作系统自身分区内申请可供调整的资源;或者,
根据所述轻量级操作系统的资源调整需求信息,向全局管理操作系统申请可供调整的资源;或者,
根据所述轻量级操作系统的资源调整需求信息,通过全局管理操作系统向所有其他友好分区内的分区管理操作系统申请可供调整的资源。
可选地,所述申请资源模块,具体用于:
根据所述轻量级操作系统的资源调整需求信息,从系统内空闲的资源中申请可供调整的资源;
若系统内空闲的资源无法满足申请的可供调整的资源,则向系统发送释放资源请求,并从释放的资源中申请可供调整的资源。
进一步地,该实施例装置还包括:
通告模块71,用于所述分配模块将申请的可供调整的资源分配给所述轻量级操作系统之后,向所述全局管理操作系统通告资源调整结果,以使所述全局管理操作系统对全局资源管理信息进行同步。
本实施例的装置,用于执行图3所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图8为本发明资源动态调整装置实施例二的结构图,如图8所示,本实施例在图6所述的结构基础上,进一步地,所述获取模块61,包括:接收单元801,用于接收分区管理操作系统自身分区内的轻量级操作系统发送的资源调整需求信息。
具体地,所述接收单元801,具体用于:
接收分区管理操作系统自身分区内的轻量级操作系统发送的根据自身实时监控的资源压力生成的资源调整需求信息;或者,
接收分区管理操作系统自身分区内的轻量级操作系统发送的根据自身的应用需求生成的资源调整需求信息。
进一步地,所述资源压力至少包括下述一种或多种资源使用情况:
CPU利用率、内存使用率、网卡数据传输速率、磁盘平均传输速率或者平均访问延迟。
具体地,所述申请资源模块62,具体用于:
根据所述轻量级操作系统的资源调整需求信息,同时向所述分区管理操作系统自身分区内、全局管理操作系统内以及通过全局管理操作系统向所有其他友好分区内的分区管理操作系统内发出申请可供调整的资源的请求,并根据基于预定义的最佳收益模型对接收到的各系统的请求响应信息的评估报告综合选择申请的可供调整的资源。
进一步地,该实施例装置还包括通告模块81,用于所述分配模块将申请的可供调整的资源分配给所述轻量级操作系统之后,向所述全局管理操作系统通告资源调整结果,以使所述全局管理操作系统对全局资源管理信息进行同步。
本实施例的装置,用于执行图4A或图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图9为本发明多内核操作系统实施例一的结构图,如图9所示,具体包括:
全局管理操作系统91、分区管理操作系统92以及轻量级操作系统93,其中:
所述分区管理操作系统包括如图6~7任意所述的资源动态调整装置94。
其对应的可执行图2~图5中任意实施例所述的方法,实现原理和技术效果类似,此处不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (17)
1.一种资源动态调整方法,其特征在于,包括:
分区管理操作系统获取自身分区内的轻量级操作系统的资源调整需求信息;
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源;
所述分区管理操作系统将申请的可供调整的资源分配给所述轻量级操作系统。
2.根据权利要求1所述的方法,其特征在于,所述分区管理操作系统获取自身分区内的轻量级操作系统的资源调整需求信息,包括:
所述分区管理操作系统实时监控自身分区内的各轻量级操作系统资源压力,若存在轻量级操作系统超过预设的资源压力时,生成所述轻量级操作系统的资源调整需求信息;或者,
所述分区管理操作系统接收自身分区内的轻量级操作系统发送的资源调整需求信息。
3.根据权利要求2所述的方法,其特征在于,所述分区管理操作系统接收自身分区内的轻量级操作系统发送的资源调整需求信息,包括:
所述分区管理操作系统接收自身分区内的轻量级操作系统发送的根据自身实时监控的资源压力生成的资源调整需求信息;或者,
所述分区管理操作系统接收自身分区内的轻量级操作系统发送的根据自身的应用需求生成的资源调整需求信息。
4.根据权利要求2或3所述的方法,其特征在于,所述资源压力至少包括下述一种或多种资源使用情况:
CPU利用率、内存使用率、网卡数据传输速率、磁盘平均传输速率或者平均访问延迟。
5.根据权利要求1所述的方法,其特征在于,所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源,包括:
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向所述分区管理操作系统自身分区内申请可供调整的资源;或者,
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向全局管理操作系统申请可供调整的资源;或者,
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,通过全局管理操作系统向所有其他友好分区内的分区管理操作系统申请可供调整的资源。
6.根据权利要求1所述的方法,其特征在于,所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源,包括:
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,同时向所述分区管理操作系统自身分区内、全局管理操作系统内以及通过全局管理操作系统向所有其他友好分区内的分区管理操作系统内发出申请可供调整的资源的请求,并根据基于预定义的最佳收益模型对接收到的各系统的请求响应信息的评估报告综合选择申请的可供调整的资源。
7.根据权利要求1-6任一所述的方法,其特征在于,所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源,包括:
所述分区管理操作系统根据所述轻量级操作系统的资源调整需求信息,从系统内空闲的资源中申请可供调整的资源;
若系统内空闲的资源无法满足申请的可供调整的资源,则所述分区管理操作系统向系统发送释放资源请求,并从释放的资源中申请可供调整的资源。
8.根据权利要求1所述的方法,其特征在于,所述分区管理操作系统将申请的可供调整的资源分配给所述轻量级操作系统之后,还包括:
所述分区管理操作系统向所述全局管理操作系统通告资源调整结果,以使所述全局管理操作系统对全局资源管理信息进行同步。
9.一种资源动态调整装置,其特征在于,包括:
获取模块,配置于分区管理操作系统中,用于获取分区管理操作系统自身分区内的轻量级操作系统的资源调整需求信息;
申请资源模块,配置于分区管理操作系统中,用于根据所述轻量级操作系统的资源调整需求信息,向系统申请可供调整的资源;
分配模块,配置于分区管理操作系统中,用于将申请的可供调整的资源分配给所述轻量级操作系统。
10.根据权利要求9所述的装置,其特征在于,所述获取模块,包括:
监控单元,用于实时监控分区管理操作系统自身分区内的各轻量级操作系统资源压力,若存在轻量级操作系统超过预设的资源压力时,生成所述轻量级操作系统的资源调整需求信息;或者,
接收单元,用于接收分区管理操作系统自身分区内的轻量级操作系统发送的资源调整需求信息。
11.根据权利要求10所述的装置,其特征在于,所述接收单元,具体用于:
接收分区管理操作系统自身分区内的轻量级操作系统发送的根据自身实时监控的资源压力生成的资源调整需求信息;或者,
接收分区管理操作系统自身分区内的轻量级操作系统发送的根据自身的应用需求生成的资源调整需求信息。
12.根据权利要求10或11所述的装置,其特征在于,所述资源压力至少包括下述一种或多种资源使用情况:
CPU利用率、内存使用率、网卡数据传输速率、磁盘平均传输速率或者平均访问延迟。
13.根据权利要求9所述的装置,其特征在于,所述申请资源模块,具体用于:
根据所述轻量级操作系统的资源调整需求信息,向所述分区管理操作系统自身分区内申请可供调整的资源;或者,
根据所述轻量级操作系统的资源调整需求信息,向全局管理操作系统申请可供调整的资源;或者,
根据所述轻量级操作系统的资源调整需求信息,通过全局管理操作系统向所有其他友好分区内的分区管理操作系统申请可供调整的资源。
14.根据权利要求9所述的装置,其特征在于,所述申请资源模块,具体用于:
根据所述轻量级操作系统的资源调整需求信息,同时向所述分区管理操作系统自身分区内、全局管理操作系统内以及通过全局管理操作系统向所有其他友好分区内的分区管理操作系统内发出申请可供调整的资源的请求,并根据基于预定义的最佳收益模型对接收到的各系统的请求响应信息的评估报告综合选择申请的可供调整的资源。
15.根据权利要求9-14任一所述的装置,其特征在于,所述申请资源模块,具体用于:
根据所述轻量级操作系统的资源调整需求信息,从系统内空闲的资源中申请可供调整的资源;
若系统内空闲的资源无法满足申请的可供调整的资源,则向系统发送释放资源请求,并从释放的资源中申请可供调整的资源。
16.根据权利要求9所述的装置,其特征在于,还包括:
通告模块,用于所述分配模块将申请的可供调整的资源分配给所述轻量级操作系统之后,向所述全局管理操作系统通告资源调整结果,以使所述全局管理操作系统对全局资源管理信息进行同步。
17.一种多内核操作系统,包括:全局管理操作系统、分区管理操作系统以及轻量级操作系统,其特征在于:
所述分区管理操作系统包括如权利要求9-16任一所述的资源动态调整装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310694877.0A CN104714845B (zh) | 2013-12-17 | 2013-12-17 | 资源动态调整方法、装置及多内核操作系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310694877.0A CN104714845B (zh) | 2013-12-17 | 2013-12-17 | 资源动态调整方法、装置及多内核操作系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104714845A true CN104714845A (zh) | 2015-06-17 |
CN104714845B CN104714845B (zh) | 2018-06-26 |
Family
ID=53414214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310694877.0A Active CN104714845B (zh) | 2013-12-17 | 2013-12-17 | 资源动态调整方法、装置及多内核操作系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104714845B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106685719A (zh) * | 2016-12-30 | 2017-05-17 | 郑州云海信息技术有限公司 | 一种网卡性能优化方法及系统 |
CN109412829A (zh) * | 2018-08-30 | 2019-03-01 | 华为技术有限公司 | 一种资源配置的预测方法及设备 |
CN109597650A (zh) * | 2017-09-30 | 2019-04-09 | 中兴通讯股份有限公司 | 一种多操作系统启动的方法、装置、设备及存储介质 |
CN112527506A (zh) * | 2020-12-18 | 2021-03-19 | 北京百度网讯科技有限公司 | 设备资源的处理方法、装置、电子设备及存储介质 |
WO2022204873A1 (zh) * | 2021-03-29 | 2022-10-06 | 华为技术有限公司 | 电子装置、系统级芯片和物理核分配方法 |
CN115587071A (zh) * | 2022-12-12 | 2023-01-10 | 南京芯驰半导体科技有限公司 | 一种基于多核异构SoC车载系统数据储存系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101436966A (zh) * | 2008-12-23 | 2009-05-20 | 北京航空航天大学 | 虚拟机环境下的网络监控与分析系统 |
CN101706743A (zh) * | 2009-12-07 | 2010-05-12 | 北京航空航天大学 | 一种多核环境下的虚拟机调度方法 |
CN102279771A (zh) * | 2011-09-02 | 2011-12-14 | 北京航空航天大学 | 一种虚拟化环境中自适应按需资源分配的方法及系统 |
CN102339229A (zh) * | 2010-07-15 | 2012-02-01 | 戴元顺 | 基于操作系统层的虚拟化方法 |
-
2013
- 2013-12-17 CN CN201310694877.0A patent/CN104714845B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101436966A (zh) * | 2008-12-23 | 2009-05-20 | 北京航空航天大学 | 虚拟机环境下的网络监控与分析系统 |
CN101706743A (zh) * | 2009-12-07 | 2010-05-12 | 北京航空航天大学 | 一种多核环境下的虚拟机调度方法 |
CN102339229A (zh) * | 2010-07-15 | 2012-02-01 | 戴元顺 | 基于操作系统层的虚拟化方法 |
CN102279771A (zh) * | 2011-09-02 | 2011-12-14 | 北京航空航天大学 | 一种虚拟化环境中自适应按需资源分配的方法及系统 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106685719A (zh) * | 2016-12-30 | 2017-05-17 | 郑州云海信息技术有限公司 | 一种网卡性能优化方法及系统 |
CN109597650A (zh) * | 2017-09-30 | 2019-04-09 | 中兴通讯股份有限公司 | 一种多操作系统启动的方法、装置、设备及存储介质 |
CN109412829A (zh) * | 2018-08-30 | 2019-03-01 | 华为技术有限公司 | 一种资源配置的预测方法及设备 |
CN109412829B (zh) * | 2018-08-30 | 2020-11-17 | 华为技术有限公司 | 一种资源配置的预测方法及设备 |
CN112527506A (zh) * | 2020-12-18 | 2021-03-19 | 北京百度网讯科技有限公司 | 设备资源的处理方法、装置、电子设备及存储介质 |
WO2022204873A1 (zh) * | 2021-03-29 | 2022-10-06 | 华为技术有限公司 | 电子装置、系统级芯片和物理核分配方法 |
CN115587071A (zh) * | 2022-12-12 | 2023-01-10 | 南京芯驰半导体科技有限公司 | 一种基于多核异构SoC车载系统数据储存系统及方法 |
CN115587071B (zh) * | 2022-12-12 | 2023-03-10 | 南京芯驰半导体科技有限公司 | 一种基于多核异构SoC车载系统数据储存系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104714845B (zh) | 2018-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104714845B (zh) | 资源动态调整方法、装置及多内核操作系统 | |
Hoang et al. | FBRC: Optimization of task scheduling in fog-based region and cloud | |
US11032212B2 (en) | Systems and methods for provision of a guaranteed batch | |
CN106776005B (zh) | 一种面向容器化应用的资源管理系统及方法 | |
CN107003887B (zh) | Cpu超载设置和云计算工作负荷调度机构 | |
US10334034B2 (en) | Virtual machine live migration method, virtual machine deployment method, server, and cluster system | |
US9485197B2 (en) | Task scheduling using virtual clusters | |
US9571561B2 (en) | System and method for dynamically expanding virtual cluster and recording medium on which program for executing the method is recorded | |
EP3253027B1 (en) | Resource allocation method and apparatus for virtual machines | |
US10993127B2 (en) | Network slice instance management method, apparatus, and system | |
CN105760519B (zh) | 一种集群文件系统及其文件锁分配方法 | |
CN103067524A (zh) | 一种基于云计算环境的蚁群优化计算资源分配方法 | |
CN110532086B (zh) | 资源复用方法、设备、系统及存储介质 | |
CN111628887B (zh) | 物联网切片资源分配系统、方法、电子设备及存储介质 | |
EP3061209B1 (en) | Methods, nodes and computer program for enabling of resource component allocation | |
CN114090176A (zh) | 一种基于Kubernetes的容器调度方法 | |
Chen et al. | Latency minimization for mobile edge computing networks | |
CN106878389B (zh) | 用于在云系统中进行资源调度的方法和装置 | |
CN103414657A (zh) | 一种跨数据中心的资源调度方法、超级调度中心和系统 | |
GB2584980A (en) | Workload management with data access awareness in a computing cluster | |
CN112905334A (zh) | 资源管理方法、装置、电子设备和存储介质 | |
CN106293945A (zh) | 一种跨虚拟机的资源感知方法及系统 | |
WO2016153401A1 (en) | Methods and nodes for scheduling data processing | |
CN109040156A (zh) | 一种基于容器云的软负载资源处理方法及装置 | |
CN105634990B (zh) | 基于时间频谱连续的资源预留方法、装置和处理器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |