[发明专利]用于内存快照文件的格式转换方法、设备和系统在审
| 申请号: | 202010836787.0 | 申请日: | 2020-08-19 |
| 公开(公告)号: | CN114077575A | 公开(公告)日: | 2022-02-22 |
| 发明(设计)人: | 徐睿祺;楚培林;陈强;陈瑞坤 | 申请(专利权)人: | 腾讯科技(成都)有限公司 |
| 主分类号: | G06F16/11 | 分类号: | G06F16/11 |
| 代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 孙之刚;陈岚 |
| 地址: | 610041 四川省成都市成都*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 用于 内存 快照 文件 格式 转换 方法 设备 系统 | ||
1.一种用于内存快照文件的格式转换方法,包括:
获取目标应用的第一存储格式的内存快照文件,第一存储格式为第一内存分析器默认的内存快照文件格式;
利用第一内存分析器,将第一存储格式的内存快照文件转换为第二存储格式的内存快照文件,第二存储格式为第二内存分析器默认的内存快照文件格式,且第二内存分析器是第一内存分析器的升级版本,
其中,所述利用第一内存分析器,将第一存储格式的内存快照文件转换为第二存储格式的内存快照文件,包括:
解析第一存储格式的内存快照文件,以获取目标应用的内存对象的快照信息,所述内存对象的快照信息包括内存对象的数据内容;以及
将所述内存对象的快照信息以第二存储格式存储到预置的存储空间以生成第二存储格式的内存快照文件。
2.根据权利要求1所述的方法,其中第一内存分析器用于基于第一引擎的应用,第二内存分析器用于基于第二引擎的应用,且第二引擎是第一引擎的升级版本。
3.根据权利要求1所述的方法,其中,所述将所述目标应用的内存对象的快照信息以第二存储格式存储到预置的存储空间以生成第二存储格式的内存快照文件,包括:
将预置的存储空间进行划分,以使得所述预置的存储空间包括第一存储区、第二存储区、第三存储区、第四存储区、第五存储区和第六存储区;
将内存对象的数据内容按照内存对象的第一数据类型的不同分成一个或多个数据块,其中所述一个或多个数据块中的每一个数据块包含一种第一数据类型的内存对象的数据内容,第一数据类型为第一存储格式的内存快照文件默认的数据类型;
将所述一个或多个数据块中每一个数据块分成一个或多个段,并按照逐段写入的方式将每一个数据块的所述一个或多个段依次写入第一存储区,并记录每一个数据块的各个段在第一存储区中的位置以及每一个数据块中的每一个内存对象的数据内容在该数据块中的偏移位置;
将每一个数据块的各个段在第一存储区中的位置作为每一个数据块的头信息依次写入第二存储区,并记录每一个数据块的头信息在第二存储区中的位置;
将每一个数据块的头信息在第二存储区中的位置作为每一个数据块的目录依次写入第三存储区,并记录每一个数据块的目录在第三存储区的位置;
将分别由用于描述所述一个或多个数据块中每一个数据块的描述信息构成的一个或多个描述信息块依次写入第四存储区,并记录所述一个或多个描述信息块中每一个描述信息块在第四存储区中的位置,其中每一个数据块的描述信息包括该数据块中每一个内存对象的第一数据类型或第二数据类型、该数据块中每一个内存对象的数据内容在该数据块中偏移位置,其中第二数据类型为第二存储格式的内存快照文件默认的数据类型;
将每一个数据块的目录在第三存储区的位置以及每一个描述信息块在第四存储区中的位置作为每一个描述信息块的目录依次写入第五存储区;
将每一个描述信息块的目录在第五存储区中的位置作为每一个描述信息块的头信息依次写入第六存储区并且将文件尾信息写入第六存储区。
4.根据权利要求3所述的方法,其中第一数据类型包括58种数据类型中至少一种,第二数据类型包括常量、固定大小数组以及动态大小数组中至少一种。
5.根据权利要求1所述的方法,其中所述获取目标应用的第一存储格式的内存快照文件包括:
向终端设备发送内存快照获取请求,以指示终端设备通过下述方式生成目标应用的第一存储格式的内存快照文件:
在目标应用运行时查找全部内存对象中每一个内存对象的直接引用关系信息;
根据每一个内存对象的直接引用关系信息,确定每一个内存对象的引用链信息;
根据目标应用的每一个内存对象的引用链信息,生成目标应用的第一存储格式的内存快照文件,
从终端设备接收所述目标应用的第一存储格式的内存快照文件。
6.根据权利要求5所述的方法,进一步包括:
解析并展示第一存储格式的内存快照文件,其中包括以树状结构展示全部内存对象中至少一个的引用链信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(成都)有限公司,未经腾讯科技(成都)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010836787.0/1.html,转载请声明来源钻瓜专利网。





