[发明专利]虚拟机内存分配方法、装置及设备在审
申请号: | 202111221862.3 | 申请日: | 2021-10-20 |
公开(公告)号: | CN114116119A | 公开(公告)日: | 2022-03-01 |
发明(设计)人: | 郑豪 | 申请(专利权)人: | 阿里巴巴(中国)有限公司;阿里云计算有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F12/1027 |
代理公司: | 北京太合九思知识产权代理有限公司 11610 | 代理人: | 刘戈 |
地址: | 310052 浙江省杭州市滨江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 虚拟机 内存 分配 方法 装置 设备 | ||
1.一种虚拟机内存分配方法,其特征在于,包括:
确定需要为虚拟机分配的目标内存大小;
如果所述目标内存大小大于或等于第一内存粒度,则在预留内存中寻找第一内存段,直至找到大小之和为第一大小的至少一个第一内存段,或者直至遍历所述预留内存,并将找到的第一内存段分配给所述虚拟机;所述第一内存段是所述预留内存中按照第一内存粒度对齐的一段空闲内存,所述第一大小等于所述目标内存大小与所述第一内存粒度之商的整数部分乘以所述第一内存粒度;
如果所述目标内存大小小于所述第一内存粒度,则在所述预留内存中寻找至少一个第二内存段,并将找到的所述至少一个第二内存段分配给所述虚拟机,所述第二内存段是所述预留内存中按照第二内存粒度对齐的一段空闲内存,所述第二内存粒度小于所述第一内存粒度,所述至少一个第二内存段的大小之和等于所述目标内存大小。
2.根据权利要求1所述的方法,其特征在于,所述在预留内存中寻找第一内存段,直至找到大小之和为第一大小的至少一个第一内存段,或者直至遍历所述预留内存,包括:
从所述预留内存中与所述第一内存粒度对应的当前分配位置开始,选取按照所述第一内存粒度对齐的第一起始分配位置;
在所述预留内存中,寻找从所述第一起始分配位置开始的一段空闲内存,并对找到的这段空闲内存进行第一内存粒度的对齐处理,得到第一对齐后内存;
如果所述第一对齐后内存的大小为0,则判断是否已遍历所述预留内存,如果是,则结束寻找;
如果所述第一对齐后内存的大小大于0,则所述第一对齐后内存即为找到的一个第一内存段,并判断已经找到的第一内存段的大小之和是否达到所述第一大小,如果是,则结束寻找;
否则,更新所述与所述第一内存粒度对应的当前分配位置,从所述预留内存中与所述第一内存粒度对应的更新后的当前分配位置开始,选取按照所述第一内存粒度对齐的第一起始分配位置,并返回所述在所述预留内存中,寻找从所述第一起始分配位置开始的一段空闲内存的步骤执行。
3.根据权利要求2所述的方法,其特征在于,所述在所述预留内存中,寻找从所述第一起始分配位置开始的一段空闲内存之前,还包括:
判断所述目标内存大小是否是所述第一内存大小的整数倍;
如果所述目标内存大小是所述第一内存粒度的整数倍,则判断所述预留内存中,从所述第一起始分配位置开始的连续所述目标内存大小的内存是否均为空闲;
如果均为空闲,则从所述第一起始分配位置开始的连续所述目标内存大小的内存即为找到的大小为所述目标内存大小的第一内存段;
如果所述目标内存大小不是所述第一内存粒度的整数倍,或者如果所述目标内存大小是所述第一内存粒度的整数倍但是所述预留内存中从所述第一起始分配位置开始的连续所述目标内存大小的内存不均为空闲,则执行所述在所述预留内存中,寻找从所述第一起始分配位置开始的一段空闲内存的步骤。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
在寻找所述第一内存段的结束条件为遍历所述预留内存时,在所述预留内存中寻找大小之和为第二大小的至少一个第二内存段,并将找到的所述至少一个第二内存段分配给所述虚拟机,所述第二大小为所述第一大小与已找到的所述第一内存段的大小之和的差。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
在所述目标内存大小与所述第一内存粒度之商的小数部分为非0时,在所述预留内存中寻找大小之和为第三大小的至少一个第二内存段,并将找到的所述至少一个第二内存段分配给所述虚拟机,所述第三大小等于所述目标内存大小与所述第一内存粒度之商的小数部分乘以所述第一内存粒度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴(中国)有限公司;阿里云计算有限公司,未经阿里巴巴(中国)有限公司;阿里云计算有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111221862.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种系统级封装结构及其制作方法
- 下一篇:反置式肩关节系统手术持头器