[发明专利]基于线程循环调度顺序化的中断驱动程序模型检测方法在审
申请号: | 202210402661.1 | 申请日: | 2022-04-18 |
公开(公告)号: | CN115033472A | 公开(公告)日: | 2022-09-09 |
发明(设计)人: | 张媛;吴逸飞;屈磊;吴兴国;陈睿;于婷婷;孔维强 | 申请(专利权)人: | 大连理工大学;北京轩宇信息技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F9/48 |
代理公司: | 辽宁鸿文知识产权代理有限公司 21102 | 代理人: | 许明章;王海波 |
地址: | 116024 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 线程 循环 调度 顺序 中断 驱动程序 模型 检测 方法 | ||
1.一种基于线程循环调度顺序化的中断驱动程序模型检测方法,其特征在于,包括如下步骤:
1)用户选择输入待检测的中断驱动程序;
2)对中断驱动程序自动解析包含的中断类型,并由用户输入中断相关信息和指定顺序化参数值;
3)根据收集的中断相关信息,计算需要创建的线程数;
4)根据计算出的需要创建的线程数和用户提供的触发事件触发中断的事件,使用源到源的转化方法将中断驱动程序转化成标准多线程程序;
5)使用线程循环调度顺序化处理将得到的标准多线程程序转化成基于线程循环调度顺序化的顺序化程序;
6)选择检测的程序性质;
7)将顺序化程序输入给限界模型检测工具:根据选择的检测的程序性质和参数设置,使用限界模型检测工具对得到的顺序化程序进行检测;
8)输出结果:当输入的中断驱动型嵌入式软件中存在软件缺陷时,输出结果UNSAFE和缺陷的反例路径;反之,当软件中不存在缺陷时,输出结果SAFE。
2.根据权利要求1所述的一种基于线程循环调度顺序化的中断驱动程序的模型检测方法,其特征在于,所述步骤2)中,具体过程包括:
2-1)使用语法分析器解析出中断驱动程序中包含的中断和中断的数量;
2-2)用户对解析出的中断填写中断相关信息,所述的中断相关信息包括中断类型S、中断优先级P、随机中断的时间约束C、周期中断的周期Tpi和可以触发事件触发中断的事件Event;
2-3)用户指定顺序化参数值,所述顺序化参数值指的是为生成顺序化程序需要的参数unwind和参数round设定数值,所述的参数unwind用于转化顺序化程序时设置中断驱动程序中循环的展开次数,所述的参数round用于转化顺序化程序时设置得到的顺序化程序中主函数中循环调度线程的次数。
3.根据权利要求1或2所述的一种基于线程循环调度顺序化的中断驱动程序的模型检测方法,其特征在于,步骤3)中,具体过程包括:
3-1)对于中断驱动程序中的每个随机中断,在顺序化程序中对应创建的中断线程数量至少等于参数round的值,所述的中断线程表示与对应中断相同函数体的线程;
3-2)对于中断驱动程序中的每个周期中断,在顺序化程序中对应创建的周期中断线程数量的计算公式为:
其中,Cpi表示需要创建的周期中断的数量,Tw表示对中断驱动程序主任务中所有函数内联和所有循环展开后主任务中包含的总代码行数,U表示参数unwind的值,Tpi表示周期中断的周期;
3-3)对于中断驱动程序中的每个事件触发中断,在顺序化程序中对应创建的事件触发中断线程数量至少等于参数round的值。
4.根据权利要求1或2所述的一种基于线程循环调度顺序化的中断驱动程序的模型检测方法,其特征在于,步骤4)中,具体包括:
4-1)使用源到源的转化方法将中断驱动程序中的主任务部分作为标准多线程程序中的一个线程,所述的源到源转化处理指按照标准多线程程序模式对输入的中断驱动程序进行修改;
4-2)根据计算的需要创建的线程数量,在标准多线程程序中添加相应的中断线程创建函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连理工大学;北京轩宇信息技术有限公司,未经大连理工大学;北京轩宇信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210402661.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种EPS塑料泡沫脱模工艺
- 下一篇:一种高隔离电压型变压器的封装结构