System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种虚拟机内存资源管理方法、装置、设备及介质制造方法及图纸_技高网

一种虚拟机内存资源管理方法、装置、设备及介质制造方法及图纸

技术编号:40906664 阅读:12 留言:0更新日期:2024-04-18 14:37
本发明专利技术涉及计算机技术领域,提出虚拟机内存资源管理方法、装置、设备及介质。其中,方法包括:为物理主机上运行的虚拟机创建扩展页表,基于虚拟机的内存需求在扩展页表中创建虚拟机的内存页面映射到物理主机的内存的初始映射关系;监控全部虚拟机的内存页面在预设时间内的访问情况,以计算虚拟机的内存页面在预设时间内的活跃度;若虚拟机的内存页面在预设时间内的活跃度满足预设条件,将扩展页表记录的初始映射关系修改为映射到磁盘文件;若对与磁盘文件建立映射关系的目标内存页面访问,从磁盘文件的对应位置读取目标内存页面的数据,在扩展页表中将目标内存页面恢复为映射到物理主机的对应内存。本方案提高了内存资源利用率和可扩展性。

【技术实现步骤摘要】

本专利技术涉及计算机,尤其涉及一种虚拟机内存资源管理方法、装置、设备及介质


技术介绍

1、虚拟化技术将物理资源抽象为虚拟资源,一个物理主机上可以运行多个虚拟机,每个虚拟机有各自的操作系统和应用程序,若虚拟机的内存需求超过物理主机的内存容量,由于内存不足会导致性能下降。因此,为了提高内存资源的利用率,允许物理主机分配给虚拟机的内存总量超过物理主机的实际内存总量,将不常用或者不活跃的内存页面从物理主机回收或者交换到磁盘文件中,从而释放物理主机的内存空间。

2、现有技术中,通过透明页共享和内存膨胀技术可以有效地回收冗余或者多余的内存,但可能导致虚拟机之间的干扰和竞争,并且回收效果有限;内存压缩技术可以减少内存的开销,但会增加cpu(central processing unit,中央处理器)的负载和延迟;管理程序内存交换技术会给虚拟机带来最大的性能损失和风险。因此,需要提供一种在保证虚拟机性能和稳定性的同时,提高内存资源利用率和可扩展性的内存资源管理方法。


技术实现思路

1、有鉴于此,有必要针对以上技术问题,提供一种虚拟机内存资源管理方法、装置、设备及介质。

2、根据本专利技术的第一方面,提供了一种虚拟机内存资源管理方法,所述虚拟机内存资源管理方法包括:

3、为物理主机上运行的虚拟机创建扩展页表,并基于所述虚拟机的内存需求在所述扩展页表中创建所述虚拟机的内存页面映射到所述物理主机的内存的初始映射关系;

4、监控全部所述虚拟机的内存页面在预设时间内的访问情况,基于所述访问情况计算所述虚拟机的内存页面在所述预设时间内的活跃度;

5、若所述虚拟机的内存页面在所述预设时间内的活跃度满足预设条件,将所述扩展页表记录的所述初始映射关系修改为映射到磁盘文件;

6、响应于对与所述磁盘文件建立映射关系的目标内存页面进行访问,从所述磁盘文件的对应位置读取所述目标内存页面的数据,并在所述扩展页表中将所述目标内存页面的映射关系恢复为映射到所述物理主机的对应内存。

7、在一些实施例中,所述为物理主机上运行的虚拟机创建扩展页表的步骤,包括:

8、为物理主机上运行的虚拟机创建扩展页表结构,在所述扩展页表结构中创建若干项,通过对所述若干项的不同赋值创建若干扩展页表;

9、为所述物理主机上运行的虚拟机创建用于指向所述若干扩展页表中对应扩展页表的第一指针,基于所述第一指针指向对应扩展页表。

10、在一些实施例中,所述若干项包括:

11、扩展页表当前是否有效、扩展页表当前是否可读写、当前映射关系类型以及映射的对应地址。

12、在一些实施例中,所述当前映射关系类型包括:

13、所述虚拟机的内存与所述物理主机的内存之间的映射以及所述虚拟机的内存与磁盘文件之间的映射。

14、在一些实施例中,所述方法还包括:

15、对所述虚拟机对应的vmcs结构的若干字段进行设置,以开启所述虚拟机的扩展页表模式。

16、在一些实施例中,所述虚拟机对应的vmcs结构的若干字段包括:

17、用于将所述vmcs结构指向所述物理主机的内存的对应地址的vmcs指针、虚拟机控制字段、虚拟机状态字段以及虚拟机退出信息字段。

18、在一些实施例中,所述虚拟机控制字段包括用于控制所述虚拟机运行和转换的参数。

19、在一些实施例中,所述虚拟机状态字段包括用于保存和恢复所述虚拟机状态的参数。

20、在一些实施例中,所述虚拟机退出信息字段包括用于记录和处理所述虚拟机退出原因和结果的参数。

21、在一些实施例中,所述为所述物理主机上运行的虚拟机创建用于指向所述若干扩展页表中对应扩展页表的第一指针,基于所述第一指针指向对应扩展页表的步骤,包括:

22、为所述物理主机上运行的虚拟机创建用于指向所述若干扩展页表中对应扩展页表的第一指针,将所述第一指针存储在所述vmcs结构中的虚拟机控制字段中,设置所述vmcs结构中的虚拟机控制字段,以将所述虚拟机指向对应扩展页表。

23、在一些实施例中,所述基于所述虚拟机的内存需求在所述扩展页表中创建所述虚拟机的内存页面映射到所述物理主机的内存的初始映射关系的步骤,包括:

24、基于所述虚拟机的内存需求设置所述扩展页表当前有效;

25、将所述扩展页表的当前映射关系类型设置为所述虚拟机的内存与所述物理主机的内存之间的映射,以创建初始映射关系。

26、在一些实施例中,所述监控全部所述虚拟机的内存页面在预设时间内的访问情况的步骤,包括:

27、统计所述虚拟机的内存页面在预设时间内的访问次数和访问时间。

28、在一些实施例中,所述基于所述访问情况计算所述虚拟机的内存页面在所述预设时间内的活跃度的步骤,包括:

29、基于所述虚拟机的内存页面在所述预设时间内的访问次数和访问时间计算所述虚拟机的内存页面在所述预设时间内的使用频率;

30、基于所述虚拟机的内存页面在所述预设时间内的使用频率计算所述对应的活跃度。

31、在一些实施例中,所述若所述虚拟机的内存页面在所述预设时间内的活跃度满足预设条件,将所述扩展页表记录的所述初始映射关系修改为映射到磁盘文件的步骤,包括:

32、将所述虚拟机的内存页面在所述预设时间内的活跃度与预设的活跃度阈值进行比较;

33、响应于所述虚拟机在所述预设时间内存在活跃度低于预设的活跃度阈值的内存页面,将活跃度低于所述活跃度阈值的内存页面在所述扩展页表中的映射关系由映射到所述物理主机的对应内存修改为映射到所述磁盘文件的对应位置。

34、在一些实施例中,所述响应于对与所述磁盘文件建立映射关系的目标内存页面进行访问,从所述磁盘文件的对应位置读取所述目标内存页面的数据的步骤,包括:

35、响应于对与所述磁盘文件建立映射关系的目标内存页面进行访问,触发所述物理主机的处理器产生扩展页面违规异常,并将所述扩展页面违规异常的信息存储在所述vmcs结构的虚拟机退出信息字段中;

36、虚拟机管理器基于所述vmcs结构的虚拟机退出信息字段中存储的所述扩展页面违规异常的信息从所述磁盘文件的对应位置读取所述目标内存页面的数据。

37、在一些实施例中,所述在所述扩展页表中将所述目标内存页面的映射关系恢复为映射到所述物理主机的对应内存的步骤,包括:

38、所述虚拟机管理器将从所述磁盘文件的对应位置读取的数据写入所述物理主机的对应内存中,并将所述扩展页表中目标内存页面的映射关系由映射到所述磁盘文件的对应位置恢复为映射到所述物理主机的对应内存。

39、在一些实施例中,所述虚拟机内存资源管理方法还包括:

40、响应于所述扩展页表中目标内存页面的映射关系恢复为映射到所述物理主机的对应内存,所述虚拟机管理器恢复所述虚拟机的运行,并返回到所本文档来自技高网...

【技术保护点】

1.一种虚拟机内存资源管理方法,其特征在于,所述虚拟机内存资源管理方法包括:

2.根据权利要求1所述的虚拟机内存资源管理方法,其特征在于,所述为物理主机上运行的虚拟机创建扩展页表的步骤,包括:

3.根据权利要求2所述的虚拟机内存资源管理方法,其特征在于,所述若干项包括:

4.根据权利要求3所述的虚拟机内存资源管理方法,其特征在于,所述当前映射关系类型包括:

5.根据权利要求2所述的虚拟机内存资源管理方法,其特征在于,所述方法还包括:

6.根据权利要求5所述的虚拟机内存资源管理方法,其特征在于,所述虚拟机对应的VMCS结构的若干字段包括:

7.根据权利要求6所述的虚拟机内存资源管理方法,其特征在于,所述虚拟机控制字段包括用于控制所述虚拟机运行和转换的参数。

8.根据权利要求7所述的虚拟机内存资源管理方法,其特征在于,所述虚拟机状态字段包括用于保存和恢复所述虚拟机状态的参数。

9.根据权利要求8所述的虚拟机内存资源管理方法,其特征在于,所述虚拟机退出信息字段包括用于记录和处理所述虚拟机退出原因和结果的参数。

10.根据权利要求9所述的虚拟机内存资源管理方法,其特征在于,所述为所述物理主机上运行的虚拟机创建用于指向所述若干扩展页表中对应扩展页表的第一指针,基于所述第一指针指向对应扩展页表的步骤,包括:

11.根据权利要求4所述的虚拟机内存资源管理方法,其特征在于,所述基于所述虚拟机的内存需求在所述扩展页表中创建所述虚拟机的内存页面映射到所述物理主机的内存的初始映射关系的步骤,包括:

12.根据权利要求1所述的虚拟机内存资源管理方法,其特征在于,所述监控全部所述虚拟机的内存页面在预设时间内的访问情况的步骤,包括:

13.根据权利要求12所述的虚拟机内存资源管理方法,其特征在于,所述基于所述访问情况计算所述虚拟机的内存页面在所述预设时间内的活跃度的步骤,包括:

14.根据权利要求1所述的虚拟机内存资源管理方法,其特征在于,所述若所述虚拟机的内存页面在所述预设时间内的活跃度满足预设条件,将所述扩展页表记录的所述初始映射关系修改为映射到磁盘文件的步骤,包括:

15.根据权利要求9所述的虚拟机内存资源管理方法,其特征在于,所述响应于对与所述磁盘文件建立映射关系的目标内存页面进行访问,从所述磁盘文件的对应位置读取所述目标内存页面的数据的步骤,包括:

16.根据权利要求15所述的虚拟机内存资源管理方法,其特征在于,所述在所述扩展页表中将所述目标内存页面的映射关系恢复为映射到所述物理主机的对应内存的步骤,包括:

17.根据权利要求16所述的虚拟机内存资源管理方法,其特征在于,所述虚拟机内存资源管理方法还包括:

18.一种虚拟机内存资源管理装置,其特征在于,包括:

19. 一种电子设备,其特征在于,包括:

20.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时执行权利要求1-17任意一项所述的虚拟机内存资源管理方法。

...

【技术特征摘要】

1.一种虚拟机内存资源管理方法,其特征在于,所述虚拟机内存资源管理方法包括:

2.根据权利要求1所述的虚拟机内存资源管理方法,其特征在于,所述为物理主机上运行的虚拟机创建扩展页表的步骤,包括:

3.根据权利要求2所述的虚拟机内存资源管理方法,其特征在于,所述若干项包括:

4.根据权利要求3所述的虚拟机内存资源管理方法,其特征在于,所述当前映射关系类型包括:

5.根据权利要求2所述的虚拟机内存资源管理方法,其特征在于,所述方法还包括:

6.根据权利要求5所述的虚拟机内存资源管理方法,其特征在于,所述虚拟机对应的vmcs结构的若干字段包括:

7.根据权利要求6所述的虚拟机内存资源管理方法,其特征在于,所述虚拟机控制字段包括用于控制所述虚拟机运行和转换的参数。

8.根据权利要求7所述的虚拟机内存资源管理方法,其特征在于,所述虚拟机状态字段包括用于保存和恢复所述虚拟机状态的参数。

9.根据权利要求8所述的虚拟机内存资源管理方法,其特征在于,所述虚拟机退出信息字段包括用于记录和处理所述虚拟机退出原因和结果的参数。

10.根据权利要求9所述的虚拟机内存资源管理方法,其特征在于,所述为所述物理主机上运行的虚拟机创建用于指向所述若干扩展页表中对应扩展页表的第一指针,基于所述第一指针指向对应扩展页表的步骤,包括:

11.根据权利要求4所述的虚拟机内存资源管理方法,其特征在于,所述基于所述虚拟机的内存需求在所述扩展页表中创建所述虚拟机的内存...

【专利技术属性】
技术研发人员:袁艳涛刘为峰
申请(专利权)人:济南浪潮数据技术有限公司
类型:发明
国别省市:

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

1