安全公司报告
文库搜索
切换导航
文件分类
频道
仅15元无限下载
联系我们
问题反馈
文件分类
仅15元无限下载
联系我们
问题反馈
批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210536587.2 (22)申请日 2022.05.17 (71)申请人 大连理工大 学 地址 116024 辽宁省大连市甘井 子区凌工 路2 号 申请人 北京轩宇信息技 术有限公司 (72)发明人 屈磊 张媛 吴逸飞 陈睿 于婷婷 孔维强 (74)专利代理 机构 辽宁鸿文知识产权代理有限 公司 21102 专利代理师 许明章 王海波 (51)Int.Cl. G06F 9/48(2006.01) G06F 9/50(2006.01) (54)发明名称 基于单变量访问序模式的中断数据竞争模 型检测方法 (57)摘要 本发明公开了一种基于单变量访问序模式 的中断数据竞争模型检测方法, 属于软件模型检 测领域。 首先选择待检测模式并输入待检测变量 的名称和类型, 然后对中断程序进行顺序化处 理, 根据选择的模式在待检测变量的读写语句前 后添加赋值语句和断言, 再将其输入 给有界模型 检测工具CBMC, 最终根据返回结果得到待检测变 量是否存在该种模式的数据竞争。 此方法可以检 测中断程序中存在的特定单变量访问序模式, 同 时对反例路径进行 可视化。 权利要求书2页 说明书4页 附图2页 CN 114924852 A 2022.08.19 CN 114924852 A 1.一种基于单变量访问序模式的中断数据竞争模型检测方法, 其特征在于, 包括以下 步骤: 1)指定待检测的单变量访 问序模式和全局变量: 指定单变量访问序模式读写写、 写写 读、 读写读或写读写中的某一种模式; 同时需要给定待检测全局变量名, 若是数组的某个单 元则需要给定数组名和下 标; 2)源中断程序顺序化: 先将中断驱动程序转为多线程程序, 再将多线程程序顺序化, 使 得顺序化程序的执行能够模拟多线程程序里 的线程交互执行情况; 同时增加约束, 使得程 序的执行顺序满足源中断程序的优先级要求, 并且顺序化程序里能支持源中 断程序里的各 种中断使能和中断去能操作; 3)自动添加断言: 在步骤2)所得到的顺序化程序里, 对检测到的关于全局变量的读或 写语句, 根据指定的模式和读或写添加赋值语句和断言; 4)调用有界模型检测工具: 将步骤3)得到的顺序化程序作 为输入, 设置参数, 用有界模 型检测工具CBM C验证其中的断言; 5)得出验证结果: 若存在程序中的断言为假, 则根据反例路径将具体的语句按照执行 的先后顺序进行 可视化。 2.根据权利要求1所述的一种基于单变量访问序模式的中断数据竞争模型检测方法, 其特征在于, 步骤3)中, 自动添加断言的过程包括: 选取并发流组合; 遍历并发流, 判断每条 语句的读写类型; 若该语句是指定的全局变量的读写语句, 则根据指定的单变量访问序模 式处理方法自动添加赋值语句和断言; 若该语句不是指定的全局变量的读写语句, 则不做 处理, 继续判断下一条语句; 具体如下: 3‑1)选取并发流组合: 在单变量访问序模式中, 需要先确定 并发流组合; 一个并发流组 合包含一个并发流 1和一个并发流2, 其中并发流 1具有低优先级, 并发流2具有高优先级; 故 并发流1在主函数和除最高优先级以外的所有中 断构成的集合里选取, 并发流2在所有中 断 构成的集 合里选取; 3‑2)遍历并发流, 判断每条语句的读写类型: 对顺序化程序代码进行解析, 生成抽象语 法树AST对象, 可以得到每条语句的类型; 根据指 定的全局变量在语句中的位置判断该语句 的读写类型; 如若为if判断语句且条件为关于全局变量的表达式, 则该语句属于该全局变 量的读; 若为赋值语句且全局变量在等号左边, 则该语句属于该全局变量的写; 若为赋值语 句且全局变量在等 号右边, 则该语句属于该全局变量的读; 3‑3)不同情况 下各个单变量访问序模式处 理方式 (a)读写写模式处理方法: 在顺序 化程序中定义和待检测变量同类型的变量reader_i, write_i, 以及整型的读操作计数器变量num_i, i为所选并发流1对应的编号; 在并发流1中 关于全局变量的读 语句之后插入 赋值语句将该变量的值赋给变量reader_i, 同时将读操作 计数器变量num_i加1; 在并发流1中关于全局 变量的写语句之前插入赋值语句将该变量的 值赋给变量wr ite_i, 同时使用if语句判断读操作计数器变量num_i是否不为0, 若满足则插 入断言assert(write_i==reader_i), 并将读操作计数器变量num_i置为0; 对 并发流2不 做处理; (b)写写读模式处理方法: 在顺序化程序定义和待检测变量同类型的变量reader_i, write_i, 以及整型的写操作计数器变量num_i, i为所选并发流1对应的编号; 在并发流1中权 利 要 求 书 1/2 页 2 CN 114924852 A 2关于全局 变量的写语句之后插入赋值语句将该变量的值赋给变量write_i, 同时将写操作 计数器变量num_i加1; 在并发流1中关于全局 变量的读语句之前插入赋值语句将该变量的 值赋给变量reader_i, 同时使用if语句判断写操作计数器变量num_i是否不为0, 若满足则 插入断言assert(write_i==reader_i), 并将写操作计数器变量num_i置为0; 对 并发流2 不做处理; (c)读写读模式处理方法: 在顺序 化程序中定义和待检测变量同类型的变量reader_i, tmp_i, 以及整型的写操作计数器变量num_i, i为所选并发流1对应的编号; 在并发流1中关 于全局变量的读 语句之后插入 赋值语句将该变量的值赋给变量reader_i, 再使用if语句判 断读操作计数器变量num_i是否不为0, 若满足则添加断言assert(reader_i==tmp_i), 最 后将读操作计数器变量num_i加1, 并将reader_i值赋给缓存变量tmp_i; 在并发流1中关于 写操作之后将 读操作计数器 变量num_i置0; 对并发流2不做处 理; (d)写读写模式处理方法: 在顺序化程序中定义整型变量a_i, 以及整型的写操作计数 器变量num_i, i为所选并发流1对应的编号; 在并发流1中关于全局 变量的写语句之后使用 if语句判断写操作计数器变量num_i是否不为0, 若满足则添加断言assert(a_i==0); 最 后将写操作计数器变量num_i加1, 并将a_i置为0; 在并发流2中关于全局变量的读 语句之后 将变量a_i置为1。权 利 要 求 书 2/2 页 3 CN 114924852 A 3
专利 基于单变量访问序模式的中断数据竞争模型检测方法
文档预览
中文文档
9 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
赞助2.5元下载(无需注册)
温馨提示:本文档共9页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
下载文档到电脑,方便使用
赞助2.5元下载
本文档由 人生无常 于
2024-03-18 07:15:33
上传分享
举报
下载
原文档
(408.1 KB)
分享
友情链接
T-ZZB 0746—2018 变频空调压缩机用永磁同步电动机.pdf
GW0202-2014 国家电子政务外网 安全接入平台技术规范.pdf
DB37-T 3160-2018 渔港安全管理规范 山东省.pdf
GB-T 42143-2022 压水堆核电厂钢制安全壳设计建造规范.pdf
DB44-T 983-2012 水泥回转窑节能评价方法 广东省.pdf
GB-T 41578-2022 电动汽车充电系统信息安全技术要求及试验方法.pdf
GB-T 39334.1-2020 机械产品制造过程数字化仿真 第1部分:通用要求.pdf
GB-T 40171-2021 磁珠法DNA提取纯化试剂盒检测通则.pdf
GB 29743.1-2022 机动车冷却液 第1部分:燃油汽车发动机冷却液.pdf
GB-T 30127-2013 纺织品 远红外性能的检测和评价.pdf
GB-T 3621-2022 钛及钛合金板材.pdf
舟山市科技创新促进条例.pdf
T-NKFA 010—2022 家具企业生产质量管理规范.pdf
GB-T 39308-2020 难降解有机废水深度处理技术规范.pdf
DL-T 364-2019 光纤通道传输保护信息通用技术条件.pdf
ISO IEC 27001-2013 - 中英对照.pdf
GM-T 0017-2023 智能密码钥匙密码应用接口数据格式规范.pdf
T-WX 0002—2017 移动终端数字证书应用标准- 术语标识规范.pdf
NB-T 10419-2020 空气源热泵烤烟房.pdf
GB-T 22239-2019 信息安全技术 网络安全等级保护基本要求.pdf
1
/
3
9
评价文档
赞助2.5元 点击下载(408.1 KB)
回到顶部
×
微信扫码支付
2.5
元 自动下载
官方客服微信:siduwenku
支付 完成后 如未跳转 点击这里 下载
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们
微信(点击查看客服)
,我们将及时删除相关资源。