一种虚拟处理器调度方法技术

技术编号:39778080 阅读:7 留言:0更新日期:2023-12-22 02:24
本公开关于一种虚拟处理器调度方法,应用于虚拟化系统,虚拟化系统包括多个虚拟处理器,该方法可以包括:基于多个虚拟处理器的负载信息,生成针对目标虚拟处理器的调度指令;响应于调度指令,在确定需要进行处理器调度的情况下,从预设缓存中获取目标虚拟处理器对应的目标处理器信息;预设缓存中缓存有所述多个虚拟处理器的处理器信息;将目标处理器信息加载到主内存中;基于主内存中的目标处理器信息调度目标虚拟处理器,以使得目标虚拟处理器运行下一任务进程

【技术实现步骤摘要】
一种虚拟处理器调度方法、装置、电子设备及存储介质


[0001]本公开涉及虚拟化
,尤其涉及一种虚拟服务器调度方法


技术介绍

[0002]在支持实时调度虚拟机监视器系统中,虚拟处理器实时响应性能是评价虚拟机监视器实时性的核心指标之一

如何减少虚拟处理器的上下文切换的时间,除了硬件平台本身的性能因素外,虚拟处理器上下文大小

虚拟处理器上下文加载时机以及合理利用硬件特性至关重要

[0003]现有技术中,虚拟化系统是等中断或者信号到来时,根据执行调度算法确定要调度的目标虚拟处理器后,需要去查找目标虚拟处理器的处理器相关信息,从而导致处理器调度效率过低


技术实现思路

[0004]本公开提供一种虚拟处理器调度方法,以至少解决相关技术中虚拟处理器调度效率过低,从而影响虚拟化系统实时性的问题

本公开的技术方案如下:
[0005]根据本公开实施例的第一方面,提供一种虚拟器调度方法,应用于虚拟化系统,所述虚拟化系统包括多个虚拟处理器,包括:
[0006]基于所述多个虚拟处理器的负载信息,生成针对目标虚拟处理器的调度指令;所述目标虚拟处理器为所述多个虚拟处理器中处于空闲状态的虚拟处理器;
[0007]响应于所述调度指令,在确定需要进行处理器调度的情况下,从预设缓存中获取所述目标虚拟处理器对应的目标处理器信息;所述预设缓存中缓存有所述多个虚拟处理器的处理器信息;
[0008]将所述目标处理器信息加载到主内存中;
[0009]基于所述主内存中的所述目标处理器信息调度所述目标虚拟处理器,以使得所述目标虚拟处理器运行下一任务进程

[0010]在一种可能的实现方式中,所述基于所述多个虚拟处理器的负载信息,生成针对目标虚拟处理器的调度指令,包括:
[0011]响应于系统中断信号,获取所述多个虚拟处理器的负载信息;
[0012]基于所述多个虚拟处理器的负载信息,确定处于空闲状态的目标虚拟处理器;
[0013]生成针对所述目标虚拟处理器的调度指令

[0014]在一种可能的实现方式中,所述基于所述多个虚拟处理器的负载信息,生成针对目标虚拟处理器的调度指令,包括:
[0015]基于所述多个虚拟处理器的负载信息,确定处于空闲状态的目标虚拟处理器;
[0016]生成目标指针,所述目标指针指向所述目标虚拟处理器的目标处理器信息在所述预设缓存中的地址;
[0017]基于所述目标指针生成针对所述目标虚拟处理器的调度指令

[0018]在一种可能的实现方式中,所述方法还包括:
[0019]确定所述系统中断信号对应的中断跳转指令所对应的跳转地址;
[0020]在所述跳转地址不对应原虚拟处理器的情况下,确定需要进行处理器调度;所述原虚拟处理器为所述多个虚拟处理器中产生所述系统中断信号的虚拟处理器

[0021]在一种可能的实现方式中,所述确定所述系统中断信号对应的中断跳转指令所对应的跳转地址之后,所述方法还包括:
[0022]在所述跳转地址对应所述原虚拟处理器的情况下,确定不需要进行处理器调度

[0023]在一种可能的实施方式中,所述基于所述多个虚拟处理器的负载信息,生成针对目标虚拟处理器的调度指令之前,所述方法还包括:
[0024]响应于处理器信息预缓存指令,将所述多个虚拟处理器的处理器信息缓存到所述预设缓存中

[0025]在一种可能的实施方式中,所述基于所述多个虚拟处理器的负载信息,生成针对目标虚拟处理器的调度指令之后,所述方法还包括:
[0026]响应于所述调度指令,在确定不需要进行处理器调度的情况下,清除所述目标指针

[0027]根据本公开实施例的第二方面,提供一种虚拟处理器调度装置,包括:
[0028]调度指令生成模块,用于基于所述多个虚拟处理器的负载信息,生成针对目标虚拟处理器的调度指令;所述目标虚拟处理器为所述多个虚拟处理器中处于空闲状态的虚拟处理器;
[0029]目标处理器信息获取模块,用于响应于所述调度指令,在确定需要进行处理器调度的情况下,从预设缓存中获取所述目标虚拟处理器对应的目标处理器信息;所述预设缓存中缓存有所述多个虚拟处理器的处理器信息;
[0030]目标处理器信息加载模块,用于将所述目标处理器信息加载到主内存中;
[0031]目标虚拟处理器调度模块,用于基于所述主内存中的所述目标处理器信息调度所述目标虚拟处理器,以使得所述目标虚拟处理器运行下一任务进程

[0032]根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如上述第一方面中任一项所述的方法

[0033]根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行本公开实施例的第一方面中任一所述的方法

[0034]根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行时,使得计算机执行本公开实施例的第一方面中任一项所述的方法

[0035]本公开的实施例提供的技术方案至少带来以下有益效果:基于多个虚拟处理器的负载信息,生成针对目标虚拟处理器的调度指令;目标虚拟处理器为多个虚拟处理器中处于空闲状态的虚拟处理器;响应于调度指令,在确定需要进行处理器调度的情况下,从预设缓存中获取目标虚拟处理器对应的目标处理器信息;预设缓存中缓存有多个虚拟处理器的处理器信息;将目标处理器信息加载到主内存中;基于主内存中的所述目标处理器信息调
度目标虚拟处理器,以使得目标虚拟处理器运行下一任务进程,在确定需要进行处理器调度的情况下,直接将预设缓存中的目标虚拟处理器的处理器信息加载到主内存中,减少了从虚拟处理器内存中查找处理器信息的时间,提升了虚拟化系统的实时性

[0036]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开

附图说明
[0037]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定

[0038]图1是根据一示例性实施例示出的一种应用环境的示意图

[0039]图2是根据一示例性实施例示出的一种虚拟处理器调度方法的流程图;
[0040]图3是根据一示例性实施例示出的一种生成针对目标虚拟处理器的调度指令的流程图;
[0041]图4是根据一示例性实施例示出的另一种生成针对目标虚拟处理器的调度指令的流程图;
[0本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种虚拟处理器调度方法,其特征在于,应用于虚拟化系统,所述虚拟化系统包括多个虚拟处理器,所述方法包括:基于所述多个虚拟处理器的负载信息,生成针对目标虚拟处理器的调度指令;所述目标虚拟处理器为所述多个虚拟处理器中处于空闲状态的虚拟处理器;响应于所述调度指令,在确定需要进行处理器调度的情况下,从预设缓存中获取所述目标虚拟处理器对应的目标处理器信息;所述预设缓存中缓存有所述多个虚拟处理器的处理器信息;将所述目标处理器信息加载到主内存中;基于所述主内存中的所述目标处理器信息调度所述目标虚拟处理器,以使得所述目标虚拟处理器运行下一任务进程
。2.
根据权利要求1所述的虚拟处理器调度方法,其特征在于,所述基于所述多个虚拟处理器的负载信息,生成针对目标虚拟处理器的调度指令,包括:响应于系统中断信号,获取所述多个虚拟处理器的负载信息;基于所述多个虚拟处理器的负载信息,确定处于空闲状态的目标虚拟处理器;生成针对所述目标虚拟处理器的调度指令
。3.
根据权利要求1所述的虚拟处理器调度方法,其特征在于,所述基于所述多个虚拟处理器的负载信息,生成针对目标虚拟处理器的调度指令,包括:基于所述多个虚拟处理器的负载信息,确定处于空闲状态的目标虚拟处理器;生成目标指针,所述目标指针指向所述目标虚拟处理器的目标处理器信息在所述预设缓存中的地址;基于所述目标指针生成针对所述目标虚拟处理器的调度指令
。4.
根据权利要求2所述的虚拟处理器调度方法,其特征在于,所述方法还包括:确定所述系统中断信号对应的中断跳转指令所对应的跳转地址;在所述跳转地址不对应原虚拟处理器的情况下,确定需要进行处理器调度;所述原虚拟处理器为所述多个虚拟处理器中产生所述系统中断信号的虚拟处理器
。5.
根据权利要求4所述的虚拟处理器调度方法,其特征在于,所述确定所述系统中断信号对应的中断跳转指...

【专利技术属性】
技术研发人员:徐慧秦民
申请(专利权)人:中汽创智科技有限公司
类型:发明
国别省市:

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

1