[发明专利]一种基于模拟器指令插桩的覆盖率统计方法在审

专利信息
申请号: 202110862022.9 申请日: 2021-07-29
公开(公告)号: CN113590130A 公开(公告)日: 2021-11-02
发明(设计)人: 郭波;杨青平;何根;肖涵;蒋强;姜文海 申请(专利权)人: 四川腾盾科技有限公司
主分类号: G06F8/41 分类号: G06F8/41;G06F8/53
代理公司: 成都九鼎天元知识产权代理有限公司 51214 代理人: 徐静
地址: 610000 四川省成都市金牛高*** 国省代码: 四川;51
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 模拟器 指令 覆盖率 统计 方法
【说明书】:

发明提供一种基于模拟器指令插桩的覆盖率统计方法,包括如下步骤:步骤S10,指令插桩:在模拟器的执行路径中选择合适的插桩位置进行指令插桩;步骤S20,获取行信息:结合BFD库和Capstone库获取模拟器上运行的嵌入式软件的行信息;步骤S30,处理桩携带信息:模拟器执行时通过执行线程缓存插桩位置的桩携带信息,并新开一个桩处理线程负责对缓存的桩携带信息进行解析;步骤S40,根据所述行信息以及解析的桩携带信息进行覆盖率统计。本发明在模拟器的基础上实现指令插桩,并结合BFD库和Capstone库获取行信息,进而完成覆盖率统计,由此无需更改目标程序,即可以对软件的执行时序进行跟踪。

技术领域

本发明涉及一种基于模拟器指令插桩的覆盖率统计方法。

背景技术

模拟器使用软件仿真技术来模拟物理硬件目标系统,原来运行于真实目标机的嵌入式软件,可以不用修改就直接在模拟器上运行,并且其运行地动态特性与真实目标机上一致。利用模拟器,可以在不具备目标硬件地情况下,进行嵌入式软件开发、调试、测试和验证。

传统的嵌入式软件中覆盖率统计方法是在目标程序源代码中进行插桩,需要对目标代码进行修改重新编译,也会造成代码量的扩张。

BFD(binary format descriptor,即二进制文件格式描述符)实现了对目标文件操作的标准接口,主要功能包括段操作,符号表处理等,支持的文件格式有a.out,coff以及elf。Capstone是一种反汇编框架,提供了多种架构的二进制反汇编功能。

因此,可以在模拟器的基础上结合上述两种工具研究一种模拟器指令插桩方法,无需更改目标程序,即可以对软件的执行时序进行跟踪。

发明内容

本发明旨在提供一种基于模拟器指令插桩的覆盖率统计方法,以解决传统方法中需要对目标代码进行修改重新编译的问题。

本发明提供的一种基于模拟器指令插桩的覆盖率统计方法,包括如下步骤:

步骤S10,指令插桩:在模拟器的执行路径中选择合适的插桩位置进行指令插桩;

步骤S20,获取行信息:结合BFD库和Capstone库获取模拟器上运行的嵌入式软件的行信息;

步骤S30,处理桩携带信息:模拟器执行时通过执行线程缓存插桩位置的桩携带信息,并新开一个桩处理线程负责对缓存的桩携带信息进行解析;

步骤S40,根据所述行信息以及解析的桩携带信息进行覆盖率统计。

进一步的,步骤S10中所述插桩位置包括:头桩、尾桩、分支指令、异常触发和异常返回。

进一步的,步骤S10中所述插桩位置的桩携带信息如下:

(1)所述头桩的桩携带信息为第一条指令地址;

(2)所述尾桩的桩携带信息为最后一条指令地址;

(3)所述分支指令的桩携带信息包括跳转起始地址和跳转目标地址;

(4)所述中断异常的桩携带信息包括异常触发地址和异常目标地址;

(5)异所述异常返回的桩携带信息包括异常结束地址和返回目标地址。

进一步的,步骤S20包括如下子步骤:

步骤S21,获取模拟器上运行的嵌入式软件中所有函数的首地址和尾地址;

步骤S22,根据函数的首地址和尾地址,使用BFD库遍历每个函数内所有地址并获取所有地址对应的行信息;此时所述行信息中包含有效行号、函数名和文件名;再将所有地址及其对应的行信息的映射关系保存到hash表中;并且,在遍历完每个函数时,也完成对嵌入式软件中的指令、有效行、函数和文件的总数统计;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川腾盾科技有限公司,未经四川腾盾科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202110862022.9/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top