[发明专利]程序的功能变更方法及装置在审
| 申请号: | 201510964889.X | 申请日: | 2015-12-18 |
| 公开(公告)号: | CN105630491A | 公开(公告)日: | 2016-06-01 |
| 发明(设计)人: | 丁鹏;韩鹏 | 申请(专利权)人: | TCL集团股份有限公司 |
| 主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F9/445 |
| 代理公司: | 深圳中一专利商标事务所 44237 | 代理人: | 张全文 |
| 地址: | 516006 广东省*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 程序 功能 变更 方法 装置 | ||
1.一种程序的功能变更方法,其特征在于,包括:
接收函数替换请求和替换函数,所述函数替换请求用于将程序的源代码中 的目标函数变更为所述替换函数;
将所述替换函数编译为临时动态库后获取所述替换函数对应的函数地址, 将所述替换函数对应的函数地址与所述目标函数关联后写入预设的全局符号表;
在所述程序的运行过程中,执行所述目标函数之前,通过所述预设的全局 符号表获取所述替换函数对应的函数地址;
将所述目标函数的入口变更为所述替换函数对应的函数地址,执行所述替 换函数,返回函数值。
2.如权利要求1所述的方法,其特征在于,所述接收函数替换请求和替换 函数包括:
接收来自运行所述程序的终端的本机进程或者远程进程的函数替换请求和 替换函数。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
在所述程序编译前,在所述程序的源代码中每个函数的入口分别插入预处 理宏;
所述在所述程序的运行过程中,执行所述目标函数之前,通过所述预设的 全局符号表获取所述替换函数对应的函数地址包括:
在所述程序的运行过程中,执行所述目标函数之前,执行所述预处理宏, 以在所述预设的全局符号表中查找出所述目标函数存在所述替换函数;
在所述预设的全局符号表中获取所述替换函数对应的函数地址。
4.如权利要求1所述的方法,其特征在于,所述接收函数替换请求和替换 函数包括:
在所述程序启动运行之后,创建用于接收函数替换请求和替换函数的线程;
通过所述线程,在所述程序的运行过程中接收函数替换请求和替换函数。
5.如权利要求1所述的方法,其特征在于,在所述接收函数替换请求和替 换函数之前,所述方法还包括:
创建用于接收函数替换请求和替换函数,以及用于保存所述预设的全局符 号表的核心库;
在所述程序的编译过程中,链接所述核心库。
6.一种程序的功能变更装置,其特征在于,包括:
接收单元,用于接收函数替换请求和替换函数,所述函数替换请求用于将 程序的源代码中的目标函数变更为所述替换函数;
写入单元,用于将所述替换函数编译为临时动态库后获取所述替换函数对 应的函数地址,将所述替换函数对应的函数地址与所述目标函数关联后写入预 设的全局符号表;
获取单元,用于在所述程序的运行过程中,执行所述目标函数之前,通过 所述预设的全局符号表获取所述替换函数对应的函数地址;
变更单元,用于将所述目标函数的入口变更为所述替换函数对应的函数地 址,执行所述替换函数,返回函数值。
7.如权利要求6所述的装置,其特征在于,所述接收单元具体用于:
接收来自运行所述程序的终端的本机进程或者远程进程的函数替换请求和 替换函数。
8.如权利要求6所述的装置,其特征在于,所述装置还包括:
插入单元,用于在所述程序编译前,在所述程序的源代码中每个函数的入 口分别插入预处理宏;
所述获取单元包括:
执行子单元,用于在所述程序的运行过程中,执行所述目标函数之前,执 行所述预处理宏,以在所述预设的全局符号表中查找出所述目标函数存在所述 替换函数;
获取子单元,用于在所述预设的全局符号表中获取所述替换函数对应的函 数地址。
9.如权利要求6所述的装置,其特征在于,所述接收单元包括:
创建子单元,用于在所述程序启动运行之后,创建用于接收函数替换请求 和替换函数的线程;
接收子单元,用于通过所述线程,在所述程序的运行过程中接收函数替换 请求和替换函数。
10.如权利要求6所述的装置,其特征在于,所述装置还包括:
创建单元,用于创建用于接收函数替换请求和替换函数,以及用于保存所 述预设的全局符号表的核心库;
链接单元,用于在所述程序的编译过程中,链接所述核心库。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于TCL集团股份有限公司,未经TCL集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510964889.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:燃料电池
- 下一篇:用于制造三维薄膜太阳能电池的模板及使用方法





