发明名称 |
动态探测程序执行路径的方法、装置和计算机系统 |
摘要 |
本发明实施例提供了一种动态探测程序执行路径的方法、装置和计算机系统,能够实现程序执行路径的动态实时探测,对于应用程序和内核态程序具有通用性。该方法包括:根据被探测程序的进程特征码从所述处理器记录的指令转移信息集合中获取所述被探测程序的指令转移信息集合,所述指令转移信息集合包括至少一个指令转移信息,所述每一指令转移信息包括指令转移前后运行的指令所属的函数的符号表;根据所述每一指令转移信息包括的所述每一指令转移前后运行的指令所属的函数的符号表,生成所述被探测程序的程序执行路径,所述被探测程序的程序执行路径包括所述被探测程序运行过程中的函数调用关系。本发明实施例适用于信息技术领域。 |
申请公布号 |
CN102799523B |
申请公布日期 |
2015.06.17 |
申请号 |
CN201210227478.9 |
申请日期 |
2012.07.03 |
申请人 |
华为技术有限公司 |
发明人 |
李俊;张超 |
分类号 |
G06F11/36(2006.01)I |
主分类号 |
G06F11/36(2006.01)I |
代理机构 |
北京中博世达专利商标代理有限公司 11274 |
代理人 |
申健 |
主权项 |
一种动态探测程序执行路径的方法,所述方法应用于具有指令转移记录功能的处理器的计算机系统,所述处理器记录所述计算机系统上运行的每个程序的指令转移信息集合,其特征在于,所述方法包括:根据被探测程序的进程特征码从所述处理器记录的指令转移信息中获取所述被探测程序的指令转移信息集合,所述指令转移信息集合包括至少一个指令转移信息,每一指令转移信息包括指令转移前后运行的指令所属的函数的符号表;判断所述指令转移信息集合中是否包括第一类指令转移信息,所述第一类指令转移信息为指令转移前后的指令所属的函数的符号表相同的指令转移信息;若所述指令转移信息集合中包括所述第一类指令转移信息,从所述被探测程序的指令转移信息集合中过滤所述第一类指令转移信息,获得第一类指令转移信息集合;根据过滤了所述第一类指令转移信息的指令转移信息集合中的所述每一指令转移信息包括的所述每一指令转移前后运行的指令所属的函数的符号表,生成所述被探测程序的程序执行路径,所述被探测程序的程序执行路径包括所述被探测程序运行过程中的函数调用关系。 |
地址 |
518129 广东省深圳市龙岗区坂田华为总部办公楼 |