[发明专利]应用程序的热更新方法及装置、存储介质及电子设备有效

专利信息
申请号: 201911065642.9 申请日: 2019-11-04
公开(公告)号: CN110837391B 公开(公告)日: 2021-02-12
发明(设计)人: 卢雄涛;王妍鹏 申请(专利权)人: 广州方硅信息技术有限公司
主分类号: G06F8/656 分类号: G06F8/656;G06F8/658
代理公司: 北京集佳知识产权代理有限公司 11227 代理人: 李伟
地址: 510000 广东省广州*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 应用程序 更新 方法 装置 存储 介质 电子设备
【权利要求书】:

1.一种应用程序的热更新方法,其特征在于,包括:

当检测到与当前应用程序对应的可执行与可链接格式ELF文件时,对所述ELF文件进行解析,以获取所述ELF文件中的各个可加载段;

将每个所述可加载段映射至其对应的内存中;

确定每个所述可加载段的指针节区,并调用所述指针节区中的函数指针,在所述内存中执行所述可加载段中与所述函数指针对应的代码,以将所述代码更新至所述应用程序中;

当每个所述可加载段中的代码均更新至所述当前应用程序中时,完成所述ELF文件在内存中的加载,以实现所述应用程序的热更新;

其中,所述确定每个所述可加载段的指针节区,并调用所述指针节区中的函数指针,在所述内存中执行所述可加载段中与所述函数指针对应的代码,包括:

从所述可加载段的段参数表中获取所述可加载段的指针节区标识,依据所述指针节区标识在所述可加载段中确定对应的指针节区;

从所述可加载段的段参数表中获取所述可加载段的加载器标识,并确定与所述加载器标识对应的加载器;

调用所述指针节区中的函数指针,并确定与所述函数指针在可加载段中对应的代码,使用所述加载器在所述内存中执行所述代码。

2.根据权利要求1所述的方法,其特征在于,所述获取所述ELF文件中的各个可加载段,包括:

获取所述ELF文件中的程序头表;

读取所述程序头表中的各个程序头;

确定每个所述程序头的属性参数是否表征可加载属性;

若所述程序头的属性参数表征可加载属性,在所述ELF文件中,获取与所述程序头对应的可加载段。

3.根据权利要求1所述的方法,其特征在于,所述将每个所述可加载段映射至其对应的内存中,包括:

确定每个所述可加载段的段长度;

依据每个所述可加载段的段长度,为所述可加载段分配与其对应的内存;

获取每个所述可加载段的各个加载参数,并依据所述各个加载参数,将所述可加载段映射至其对应的内存中。

4.根据权利要求1所述的方法,其特征在于,还包括:

判断所述ELF文件是否已使用预设的加密算法进行加密;

若判断所述ELF文件已使用预设的加密算法进行加密,则确定与所述加密算法对应的解密算法;

使用所述解密算法对所述ELF文件进行解密,得到解密后的ELF文件。

5.根据权利要求2所述的方法,其特征在于,所述在所述ELF文件中,获取与所述程序头对应的可加载段,包括:

获取所述程序头中的偏移参数以及长度参数;

依据所述偏移参数在所述ELF文件中确定偏移位置;

从所述偏移位置开始,在所述ELF文件中确定与所述长度参数所表征的数据长度相一致的数据段;

将所述数据段确定为与所述程序头对应的可加载段。

6.根据权利要求1所述的方法,其特征在于,还包括:

当所述ELF文件在所述内存中加载完成时,清除所述内存中的可加载段以及所述代码的执行痕迹。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州方硅信息技术有限公司,未经广州方硅信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201911065642.9/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top