[发明专利]一种支持故障注入的确定性重放功能的实现方法有效
申请号: | 201611122244.2 | 申请日: | 2016-12-08 |
公开(公告)号: | CN106681911B | 公开(公告)日: | 2019-05-14 |
发明(设计)人: | 高进;卢建鹏;蔡铭 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 刘静;邱启旺 |
地址: | 310058 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种支持故障注入的确定性重放功能的实现方法。该方法通过记录快照日志文件、发送日志文件、接收日志文件和中断日志文件,实现了支持故障注入的确定性重放功能。该方法不仅能够重现整个系统的运行过程,还能更改软件执行流程,使之覆盖到更多的代码,同时,通过恢复到快照日志记录的模拟器运行状态,软件调试人员能够大大降低运行到注入点的时间,极大地提高了软件调试与测试的效率。 | ||
搜索关键词: | 一种 支持 故障 注入 的确 定性 重放 功能 实现 方法 | ||
【主权项】:
1.一种支持故障注入的确定性重放功能的实现方法,其特征在于,包括以下步骤:(1)模拟运行被测程序,当接收外设发送的数据,将接收的外设数据记录到接收日志文件;当向外设发送数据,将向外设发送的数据记录到发送日志文件;若发生中断事件,则记录到中断日志文件,并定时将模拟器状态保存到快照日志文件;(2)确定性重放系统开始运行,通过读取快照日志文件恢复模拟器内核到相应的运行状态;(3)若选择重放,则对以前的执行流程进行重放,跳转到步骤(4),若选择进行故障注入,则跳转到步骤(6);(4)打开相应的接收日志文件与中断日志文件;(5)模拟器内核运行,并判断运行是否结束,如果运行结束则跳转到步骤(8),否则循环执行该步骤;(6)确定性重放建立与外设的通信机制,确定性重放根据接收日志文件与发送日志文件里的记录与外设进程进行通信,调整外设进程到与模拟器匹配的状态;(7)模拟器内核运行,当到达注入点时进行故障注入,并建立新的快照日志文件、接受日志文件、发送日志文件和中断日志文件,然后判断运行是否结束,如果运行结束则跳转到步骤(8),否则循环执行该步骤;(8)关闭各日志文件,结束程序的运行。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201611122244.2/,转载请声明来源钻瓜专利网。