[发明专利]程序调用的优化方法及装置有效
申请号: | 201711160655.5 | 申请日: | 2017-11-20 |
公开(公告)号: | CN107861807B | 公开(公告)日: | 2021-06-25 |
发明(设计)人: | 任太胜;易新;王浩 | 申请(专利权)人: | 北京奇虎科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京律诚同业知识产权代理有限公司 11006 | 代理人: | 王玉双 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 程序 调用 优化 方法 装置 | ||
1.一种程序调用的优化方法,其特征在于,包括:
当触发调用被优化函数操作时,判断优化函数是否执行挂钩操作;
若所述优化函数执行挂钩操作,则所述优化函数通过跳转模板结合预设处理操作对所述被优化函数进行优化处理,所述跳转模板用于对所述被优化函数进行优化;
若所述优化函数没有执行挂钩操作,则直接采用预设处理操作以及所述优化函数处理所述被优化函数;
其中,所述若所述优化函数执行所述挂钩操作,则所述优化函数通过跳转模板结合预设处理操作对所述被优化函数进行优化处理包括:
当所述优化函数通过Hook函数钩取被优化函数时,判断所述被优化函数中是否存在跳转标识;
若存在跳转标识,则解析所述被优化函数中的参数;
若所述参数的转换格式标识小于预设转换条件,则通过预置指向指令跳转至替换函数进行处理;
当所述替换函数执行完毕后,根据所述优化函数的业务需求判断是否执行第一跳转指令,若所述业务需求确定为执行优化函数,则执行所述第一跳转指令,所述第一跳转指令用于跳转至所述优化函数;
通过预设处理操作使得所述优化函数处理所述被优化函数。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述参数的转换格式标识大于预设转换条件,则执行第二跳转指令,所述二跳转指令用于跳转至所述被优化函数。
3.根据权利要求2所述的方法,其特征在于,所述当所述优化函数通过Hook函数钩取被优化函数时,判断所述被优化函数中是否存在跳转标识包括:
当所述优化函数通过Hook函数钩取被优化函数时,判断所述被优化函数中的头字节是否为跳转标识JMP。
4.根据权利要求3所述的方法,其特征在于,所述若存在跳转标识,则解析所述被优化函数中的参数之后,所述方法还包括:
将解析后的参数存储在预置线程对应的局部变量中,并根据所述参数将所述局部变量中的元素转换为对应的数据类型指针,传递至Java层,所述参数包括转换格式信息、参数传递顺序信息、参数类型信息。
5.根据权利要求4所述的方法,其特征在于,所述当所述替换函数执行完毕后,根据所述优化函数的业务需求判断是否执行第一跳转指令,若所述业务需求确定为执行优化函数,则执行所述第一跳转指令包括:
根据所述数据类型指针检测所述优化函数的业务中是否存在需要执行所述优化函数的标识,若存在需要执行所述优化函数的标识,则执行所述第一跳转指令。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述通过预置指向指令跳转至替换函数进行处理之后,所述方法还包括:
将所述转换格式标识进行重置。
7.一种程序调用的优化装置,其特征在于,包括:
判断单元,用于当触发调用被优化函数操作时,判断优化函数是否执行挂钩操作;
第一处理单元,用于若所述优化函数执行所述挂钩操作,则所述优化函数通过跳转模板结合预设处理操作对所述被优化函数进行优化处理,所述跳转模板用于对所述被优化函数进行优化;
第二处理单元,用于若所述优化函数没有执行挂钩操作,则直接采用预设处理操作以及所述优化函数处理所述被优化函数;
其中,所述第一处理单元包括:
判断模块,用于当所述优化函数通过Hook函数钩取被优化函数时,判断所述被优化函数中是否存在跳转标识;
解析模块,用于若存在跳转标识,则解析所述被优化函数中的参数;
第一处理模块,用于若所述参数的转换格式标识小于预设转换条件,则通过预置指向指令跳转至替换函数进行处理;
第一执行模块,用于当所述替换函数执行完毕后,根据所述优化函数的业务需求判断是否执行第一跳转指令,若所述业务需求确定为执行优化函数,则执行所述第一跳转指令,所述第一跳转指令用于跳转至所述优化函数;
第二处理模块,用于通过预设处理操作使得所述优化函数处理所述被优化函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司,未经北京奇虎科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711160655.5/1.html,转载请声明来源钻瓜专利网。