[发明专利]代码分析方法、装置、计算机设备及存储介质在审
| 申请号: | 202110396877.7 | 申请日: | 2021-04-13 |
| 公开(公告)号: | CN112988593A | 公开(公告)日: | 2021-06-18 |
| 发明(设计)人: | 宋大伟;杨群峰;徐志普 | 申请(专利权)人: | 苏州沁游网络科技有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
| 地址: | 215006 江苏省苏州市苏州工*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 代码 分析 方法 装置 计算机 设备 存储 介质 | ||
1.一种代码分析方法,其特征在于,包括:
获取目标分析代码,所述目标分析代码包括多个用于实现不同功能的代码块,每个代码块中预先标注有功能注解数据;
在目标分析代码的执行过程中,动态捕捉每个代码块在执行过程中所生成的动态描述数据;
根据所述动态描述数据以及所述功能注解数据,形成与所述目标分析代码对应的执行流程描述信息。
2.根据权利要求1所述的方法,其特征在于,在目标分析代码的执行过程中,动态捕捉每个代码块在执行过程中所生成的动态描述数据,包括:
在目标分析代码的执行过程中,动态监测实时生成的目标线程;
动态捕捉与所监测的目标线程中所调用的至少一个代码块分别对应的代码块执行指令,和/或与代码块执行指令匹配的执行结果数据;
在所述代码块执行指令,和/或与代码块执行指令匹配的执行结果数据中,提取与所述目标线程中所调用的至少一个代码块分别对应的动态描述数据。
3.根据权利要求2所述的方法,其特征在于,所述在目标分析代码的执行过程中,动态监测实时生成的目标线程,包括:
在目标分析代码的执行过程中,动态捕捉生成的线程标识;
根据各所述线程标识,确定分别与各所述线程标识对应的目标线程。
4.根据权利要求2所述的方法,其特征在于,所述根据所述动态描述数据以及所述功能注解数据,形成与所述目标分析代码对应的执行流程描述信息,包括:
根据同一目标线程中捕捉到的动态描述数据,生成与所述目标线程对应的流程记录数据;
将所述动态描述数据对应的代码块的功能注解数据添加至对应的流程记录数据中,形成与所述目标分析代码对应的执行流程描述信息。
5.根据权利要求4所述的方法,其特征在于,所述根据同一目标线程中捕捉到的动态描述数据,生成与所述目标线程对应的流程记录数据,包括:
生成分别与各所述目标线程对应的流程记录模板;
将各所述动态描述数据写入至对应的流程记录模板中,生成流程记录数据。
6.根据权利要求5所述的方法,其特征在于,所述将各所述动态描述数据写入至对应的流程记录模板中,生成流程记录数据,包括:
根据所述动态描述数据在各所述目标线程中的生成顺序,将各所述动态描述数据依次写入至对应的流程记录模板中,生成流程记录数据,以使各所述流程记录数据中的动态描述数据具有与所述生成顺序一致的排序关系。
7.根据权利要求1-6任一所述的方法,其特征在于,所述动态描述数据包括:所述代码块的传入参数数据、输出参数数据和数据库关联数据。
8.一种代码分析装置,其特征在于,包括:
代码获取模块,用于获取目标分析代码,所述目标分析代码包括多个用于实现不同功能的代码块,每个代码块中预先标注有功能注解数据;
数据捕捉模块,用于在目标分析代码的执行过程中,动态捕捉每个代码块在执行过程中所生成的动态描述数据;
流程描述模块,用于根据所述动态描述数据以及所述功能注解数据,形成与所述目标分析代码对应的执行流程描述信息。
9.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的代码分析方法。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的代码分析方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州沁游网络科技有限公司,未经苏州沁游网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110396877.7/1.html,转载请声明来源钻瓜专利网。





