[发明专利]内存迁移方法、装置及计算设备在审
申请号: | 201910913238.6 | 申请日: | 2019-09-25 |
公开(公告)号: | CN112559116A | 公开(公告)日: | 2021-03-26 |
发明(设计)人: | 田殿臣 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 北京太合九思知识产权代理有限公司 11610 | 代理人: | 曹威;刘戈 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 迁移 方法 装置 计算 设备 | ||
1.一种内存迁移方法,其特征在于,包括:
创建处理线程、发送线程及针对内存区域的遍历线程;
由所述遍历线程迭代执行遍历操作;所述遍历操作包括遍历所述内存区域的脏页位图,将脏页地址分配至所述处理线程;
由所述处理线程迭代执行处理操作;所述处理操作包括基于分配的脏页地址读取脏页数据,并为所述脏页数据添加轮数标记信息,生成待迁移脏页;
由所述发送线程迭代执行传输操作;所述传输操作包括发送所述待迁移脏页至目的端;其中,所述目的端基于不同待迁移脏页的迭代轮数依序将各自的脏页数据还原至目的内存。
2.根据权利要求1所述的方法,其特征在于,所述处理线程具体迭代执行如下处理操作:
基于分配的脏页地址读取脏页数据;
将所述脏页数据进行压缩;
为压缩之后的所述脏页数据添加标识其对应迭代轮数的轮数标记信息,生成待迁移脏页。
3.根据权利要求1所述的方法,其特征在于,还包括:
创建针对所述内存区域的同步线程;
由所述同步线程迭代执行同步操作;所述同步操作包括获取所述内存区域的脏页位图,并将所述脏页位图发送至所述遍历线程。
4.根据权利要求1所述的方法,其特征在于,具体创建多个处理线程,多个处理线程并行运行,分别迭代执行所述处理操作;
所述遍历线程具体迭代执行如下遍历操作:
遍历所述内存区域的脏页位图,确定脏页地址及迭代轮数;
基于脏页处理数量,向存在空闲资源的一个或多个处理线程分别分配各自对应的待处理任务;其中,所述待处理任务包括所述迭代轮数以及待处理的至少一个脏页地址。
5.根据权利要求1所述的方法,其特征在于,所述处理线程具体迭代执行如下处理操作:
基于分配的脏页地址读取脏页数据;
为所述脏页数据添加标识迭代轮数的轮数标记信息,生成待迁移脏页;
将所述待迁移脏页缓存至所述处理线程对应的脏页缓存队列中。
6.根据权利要求5所述的方法,其特征在于,所述发送线程具体迭代执行如下发送操作:
将所述脏页缓存队列中的待迁移脏页传输至目的端。
7.根据权利要求1所述的方法,其特征在于,源内存划分为多个所述内存区域,不同内存区域互不重叠;
所述创建发送线程、处理线程及针对内存区域的遍历线程包括:
创建针对所述内存区域的遍历线程、至少一个发送线程、以及至少一个处理线程。
8.根据权利要求1所述的方法,其特征在于,所述创建发送线程、处理线程及针对内存区域的遍历线程包括:
在一个或多个处理组件中创建发送线程、处理线程及针对内存区域的遍历线程。
9.根据权利要求1所述的方法,其特征在于,具体创建多个处理线程以及多个发送线程;
多个处理线程并行运行,并分别迭代执行所述处理操作;多个发送线程并行运行,并分别迭代执行所述传输操作。
10.一种内存迁移方法,其特征在于,包括:
创建发送线程及针对内存区域的遍历线程;
由所述遍历线程迭代执行遍历操作;所述遍历操作包括遍历所述内存区域的脏页位图,基于脏页地址读取脏页数据;为所述脏页数据添加轮数标记信息,生成待迁移脏页;
由所述发送线程迭代执行传输操作;所述传输操作包括发送所述待迁移脏页至目的端;
其中,所述目的端基于不同待迁移脏页的迭代轮数依序将各自脏页数据还原至目的内存。
11.根据权利要求10所述的方法,其特征在于,还包括:
创建针对所述内存区域的同步线程;
由所述同步线程迭代执行同步操作;所述同步操作包括获取所述内存区域的脏页位图,并将所述脏页位图以及迭代轮数发送至所述遍历线程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910913238.6/1.html,转载请声明来源钻瓜专利网。