[发明专利]一种针对多种处理器架构的非侵入式覆盖率统计方法有效
申请号: | 202010636319.9 | 申请日: | 2020-07-03 |
公开(公告)号: | CN111813672B | 公开(公告)日: | 2022-07-08 |
发明(设计)人: | 贾张涛;吴超;付修锋;安恒;李雅斯;沈兴龙;闫帅 | 申请(专利权)人: | 北京计算机技术及应用研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F8/75 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 张然 |
地址: | 100854*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 针对 多种 处理器 架构 侵入 覆盖率 统计 方法 | ||
本发明涉及一种针对多种处理器架构的非侵入式覆盖率统计方法,包括:搭建嵌入式软件仿真运行环境;解析多种架构目标文件及调试信息格式,获取处理器对应的调试信息格式,通过解析调试信息格式获取嵌入式软件源码目标码对应关系信息;解析源代码获取源代码的分支信息;获取覆盖率信息,包括:仿真执行开始后,判断当前指令是否是分支指令,若不是,继续执行指令;如果是,以当前地址作为基本块结束地址,并以基本块开始地址和结束地址为索引,更新覆盖率查询表;将覆盖率统计分析结果输出。本发明的能够弥补现有覆盖率统计分析工具的不足,满足多种场景下覆盖率统计分析的需求。
技术领域
本发明涉及嵌入式软件的测试技术,特别涉及一种针对多种处理器架构的非侵入式覆盖率统计方法。
背景技术
随着嵌入式软件在不同领域的广泛应用,嵌入式软件的开发技术越来越多样化。嵌入式软件的安全性和可靠性问题越来越引起用户和开发人员的重视,特别是在可靠性和安全性要求很高的行业。嵌入式软件在特定的硬件环境下才能运行,但是嵌入式软件的测试环境与开发环境并不同于真实的运行环境,这将造成目标机上再充分的测试也不能保证真实运行环境下嵌入式软件的绝对安全。
为了对嵌入式软件的测试提供有力的支撑,通常的虚拟化验证平台都是基于某一种方式的验证手段,并不能满足嵌入式软件对虚拟化验证的需求,缺乏有效的覆盖率统计分析手段。
目前比较流行的测试工具提供的覆盖率统计都是基于源码的,基于目标码的覆盖率信息统计工具很少。为了满足不断涌现的目标码验证的需求,一些公司提出了一些相应的产品,但都有些缺陷,对高安全性、高可靠性的嵌入式系统的目标码验证技术的支持还不够。基于源码的覆盖率统计分析工具大都基于插装算法实现的,有两种比较典型的覆盖率分析方法,一种是依赖于某种特定编译器的覆盖率分析工具,另一种是功能单一的覆盖率分析工具。
发明内容
本发明的目的在于提出一种针对多种处理器架构的非侵入式覆盖率统计方法,用于解决嵌入式软件目标码测试过程中无法难以获取覆盖率信息的问题。
本发明一种针对多种处理器架构的非侵入式覆盖率统计方法,其中,包括:搭建嵌入式软件仿真运行环境;解析多种架构目标文件及调试信息格式,获取处理器对应的调试信息格式,通过解析调试信息格式获取嵌入式软件源码目标码对应关系信息;解析源代码获取源代码的分支信息;获取覆盖率信息,包括:仿真执行开始后,判断当前指令是否是分支指令,若不是,继续执行指令;如果是,以当前地址作为基本块结束地址,并以基本块开始地址和结束地址为索引,更新覆盖率查询表;将覆盖率统计分析结果输出。
根据本发明的针对多种处理器架构的非侵入式覆盖率统计方法的一实施例,其中,定义调试信息格式MidDebugInfo,并将多种调试信息解析后转换为该调试信息格式MidDebugInfo,调试信息包含文件信息、函数信息以及源码目标码对应关系信息,其中文件信息包含文件名、文件路径、文件对应的目标码开始地址和目标码结束地址,函数信息包含函数名、函数开始地址及函数结束地址,源码目标码对应关系信息包含源码行数、及该行源码对应的目标码开始地址和目标结束地址。
根据本发明的针对多种处理器架构的非侵入式覆盖率统计方法的一实施例,其中,搭建嵌入式软件仿真运行环境包括:目标处理器内核指令集仿真、嵌入式系统外设仿真以及仿真过程控制;目标处理器内核指令集仿真采用基于LLVM的动态二进制编译方法实现目标指令在Windows/Intel宿主机架构下的异构执行,实现目标代码脱离原始硬件执行环境;嵌入式系统外设仿真用于实现目标处理器外围设备的仿真,包括RS-422、RS-485串口设备仿真、开关量设备仿真以及存储系统仿真;仿真过程控制采用统一的时钟调度算法实现虚拟环境各组成部分的执行控制与协同运行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京计算机技术及应用研究所,未经北京计算机技术及应用研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010636319.9/2.html,转载请声明来源钻瓜专利网。