[发明专利]基于仿真环境的非侵入式嵌入式软件异常处理验证方法有效
申请号: | 201610602254.X | 申请日: | 2016-07-27 |
公开(公告)号: | CN106326107B | 公开(公告)日: | 2019-03-08 |
发明(设计)人: | 安恒;张建伟;贾张涛;孔祥炳 | 申请(专利权)人: | 北京计算机技术及应用研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 张然 |
地址: | 100854*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式软件 异常处理 仿真环境 非侵入式 异常信息 验证 采集 仿真运行环境 验证测试 测试 分析 | ||
1.一种基于仿真环境的非侵入式嵌入式软件异常处理验证方法,包括:
搭建嵌入式软件仿真运行环境;
设计异常处理验证测试用例,包括:
对嵌入式软件的关键要素进行识别和提取;
设计测试用例索引结构和异常处理数据;
该测试用例索引结构包括:测试用例编号、测试工程信息、测试时间信息、测试人员信息、测试用例格式以及测试用例存储位置;该异常处理数据包括:异常类型、异常触发位置、异常触发时刻以及异常持续时间;以及
设计异常处理数据触发形式,异常处理数据触发形式包括基于地址读访问的触发、基于地址写访问的触发、基于全局变量的触发、基于时间点的周期性触发以及基于时间点的非周期性触发;
执行异常处理测试用例,包括:
将异常处理测试用例运行于嵌入式软件仿真运行环境之上,嵌入式软件的可执行文件作为目标文件,包括仿真环境复位、目标文件加载与解析、测试用例选择与加载以及基于仿真的测试用例执行;
仿真环境复位包括:理器内核复位以及外围设备复位,复位过程将重置处理器、内存以及外围设备的寄存器为初始状态;
目标文件加载与解析包括:通过仿真运行环境存储系统仿真接口实现目标文件位置和路径的选择,通过解析目标文件实现目标文件到虚拟环境的映射;以及
测试用例选择与加载包括:通过测试用例索引结构,根据需要选择单个测试用例或者多个测试用例;将测试用例加载到仿真运行环境中;在目标文件及测试用例加载完毕后对信息采集结构进行初始化;
基于仿真的测试用例执行包括:首先仿真运行环境从嵌入式软件启动地址开始解析目标文件指令,基于目标处理器内核指令集仿真方法实现目标文件指令与宿主机指令的动态二进制编译,通过外围设备仿真接口实现外部数据的注入,同时在指令执行过程中动态维护程序指令地址和下一程序地址的跳转直至程序结束或者用户中断仿真过程,对于选择多个测试用例的情况则根据测试用例个数按顺序执行,每一次执行过程重复执行仿真环境复位、目标文件加载与解析;
采集嵌入式软件异常信息;以及
对采集的嵌入式软件异常信息进行分析与验证。
2.如权利要求1所述的基于仿真环境的非侵入式嵌入式软件异常处理验证方法,其特征在于,该关键要素包括全局变量、寄存器地址、内存排列以及函数地址的信息。
3.如权利要求1所述的基于仿真环境的非侵入式嵌入式软件异常处理验证方法,其特征在于,该嵌入式软件仿真运行环境包括:目标处理器内核指令集仿真模块,用于进行目标指令的动态二进制编译;嵌入式系统外设仿真模块,用于向目标处理器内核指令仿真模块以模拟外设的形式提供输入输出接口;仿真过程控制模块,用于协调目标处理器内核以及外设的仿真过程;测试数据输入接口,用于将测试数据直接输入给目标处理器内核指令集仿真模块。
4.如权利要求1所述的基于仿真环境的非侵入式嵌入式软件异常处理验证方法,其特征在于,基于地址读访问的触发包括:在指令执行过程中对寄存器及内存地址进行监测,在指令执行到达寄存器及内存地址并进行读访问时执行触发过程;基于地址写访问的触发包括在指令执行过程中对寄存器及内存地址进行监测,在指令执行到达寄存器及内存地址时并进行写访问时执行触发过程;基于时间点的周期性触发包括在指令执行过程中对预设时间点进行监测,在指令执行时间到达预设时间点时按照周期性的参数重复执行触发过程;基于时间点的非周期性触发包括在指令执行过程中对预设时间点进行监测,在指令执行时间到达预设时间点时按照非周期性的参数重复执行触发过程。
5.如权利要求1所述的基于仿真环境的非侵入式嵌入式软件异常处理验证方法,其特征在于,该采集嵌入式软件异常信息包括:
在仿真过程控制中每一个指令周期入口对测试用例进行搜索,包括每个指令周期搜索当前测试用例是否有时间注入、每个指令周期搜索当前测试用例中是否有指令地址注入、每个指令周期搜索当前测试用例中是否有时间采集以及每个指令周期搜索当前测试用例中是否有指令地址采集;
若上述任一条件为是,则采用增量的方式对信息采集结构进行数据刷新。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京计算机技术及应用研究所,未经北京计算机技术及应用研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610602254.X/1.html,转载请声明来源钻瓜专利网。