[发明专利]一种基于友好性驱动的跨层多路径传输算法在审
申请号: | 202010968256.7 | 申请日: | 2020-09-15 |
公开(公告)号: | CN112015664A | 公开(公告)日: | 2020-12-01 |
发明(设计)人: | 王宁 | 申请(专利权)人: | 深圳小草信息科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F8/53 |
代理公司: | 广东有知猫知识产权代理有限公司 44681 | 代理人: | 冯姣 |
地址: | 518035 广东省深圳市南山区粤海街道*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 友好 驱动 跨层多 路径 传输 算法 | ||
1.一种基于友好性驱动的跨层多路径传输算法,其特征在于,包括以下步骤:
1)基于路径驱动的多路径分析框架建立在动态模拟调试环境fr-VlSA之上,以二进制程序为输入,遍历程序执行路径,这里输出程序控制流图和汇编语言代码,主要包括:指令分析、指令状态记录、路径管理、执行控制和分析结果生成几个模块,其中模拟调试环境fr-VlSA负责二进制程序的加载,模拟程序指令的执行和程序执行状态的获取与设置,向用户提供了加载、启动、运行、暂停和设置断点等命令;
2)指令分析模块从模拟调试环境fr-VlSA中获取当前执行指令和程序执行状态,分析指令类型,根据指令类型调用路径管理模块成路径驱动信息,如果是条件控制转移指令,则调用路径管理模块对路径分析进行处理,保存或恢复程序执行状态,通知执行控制模块,调度指令在模拟调试环境中执行;
3)令状态记录模块动态维护一个已分析指令列表,列表中每一条记录对应一条指令,保存的信息包括指令地址、指令汇编代码和指令执行状态标志visited(主要针对条件转移指令)
visited=0表示条件转移指令的两条路径都未被发掘;
visited=1表示条件转移指令的一条路径未被发掘;
visited=2表示条件分支指令的两条路径都已被发掘;
4)该模块提供访问指令列表的接口,可以方便插人记录和读取记录,并为汇编程序的生成提供支持;
5)路径管理模块负责记录和维护路径驱动信息,该模块中维护一个栈结构,用来保存用于路径驱动的分支指令和状态信息,在下列情况下路径管理模块被调用。
2.根据权利要求1所述的一种基于友好性驱动的跨层多路径传输算法,其特征在于,遇到条件转移指令时,如果该指令第一次被执行,即其两条分支路径都未被执行时(visited=O),在栈结构中记录路径驱动信息。
3.根据权利要求1所述的一种基于友好性驱动的跨层多路径传输算法,其特征在于,当程序执行结束时,判断路径栈是否为空,如果栈不为空,出栈栈顶元素,将路径驱动信息提交执行控制模块,恢复相应条件转移指令的程序执行状态,触发该路径的执行。
4.根据权利要求1所述的一种基于友好性驱动的跨层多路径传输算法,其特征在于,所述栈中所保存的路径驱动信息包括以下内容:
①条件转移指令,包括指令地址和代码;
②指令执行状态,包括CPU寄存器值和程序使用的内存单元内容。
5.根据权利要求1所述的一种基于友好性驱动的跨层多路径传输算法,其特征在于,执行控制模块根据指令分析的结果和路径管理模块保存的信息调度模拟调试环境执行相应的指令,向模拟调试环境提供待执行的指令信息和程序状态信息,触发模拟仿真环境执行指令。
6.根据权利要求1所述的一种基于友好性驱动的跨层多路径传输算法,其特征在于,基于多路径分析的目标,所有指令须被执行且仅须被执行一次,但由于路径驱动的需要,有些指令可能被访问多次,为了保证所有指令仅被执行一次,对在动态执行过程中起关键作用的条件转移指令设置了访问标志visited。
7.根据权利要求1所述的一种基于友好性驱动的跨层多路径传输算法,其特征在于,visited被初始化为0,表示转移指令的两条分支路径都未被执行,在特定输人条件下,满足条件的分支已被执行,则令visited=l;若分支路径都已被执行,则令visited=2。
8.根据权利要求1所述的一种基于友好性驱动的跨层多路径传输算法,其特征在于,基于路径驱动的多路径分析算法采用深度优先搜索策略遍历程序路径,在某一输入条件下,程序在模拟调试环境下执行,这是一种自然的深度优先顺序。
9.根据权利要求1所述的一种基于友好性驱动的跨层多路径传输算法,其特征在于,当自然路径执行结束,通过修改PC值驱动执行未访问路径时,同样采用深度优先策略,为实现深度优先策略,定义了一个栈结构S来保存程序状态信息,在程序执行的每一个路径分支点,如果visited=:0,则保存程序状态信息,将状态信息人栈;如果程序执行结束,而状态栈非空,则从栈顶取出并恢复程序状态,驱动程序执行未执行的路径。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳小草信息科技有限公司,未经深圳小草信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010968256.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:测试数据录制方法、装置、设备及介质
- 下一篇:冶金除铁槽