[发明专利]动静态结合的中断驱动程序数据竞争检测方法有效
| 申请号: | 201410324303.9 | 申请日: | 2014-07-08 |
| 公开(公告)号: | CN104090798A | 公开(公告)日: | 2014-10-08 |
| 发明(设计)人: | 王林章;陈园军;陈志;李宣东 | 申请(专利权)人: | 南京大学 |
| 主分类号: | G06F9/445 | 分类号: | G06F9/445 |
| 代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 杨晓玲 |
| 地址: | 210093 江*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 静态 结合 中断 驱动程序 数据 竞争 检测 方法 | ||
1.一种动静态结合的中断驱动程序数据竞争检测方法,其特征在于该方法包含的步骤为:
步骤1:用户指定受测试的中断驱动程序源文件,所述的中断驱动程序源文件包含若干个函数构成的主任务的源代码,以及该任务涉及到的中断所对应的中断处理程序的源代码;
步骤2:用户指定测试的配置文件,所述配置文件是XML文件,XML的全称是可扩展标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言;所述的测试配置文件包括主函数的入口说明、各个中断处理程序的中断向量号和中断优先级;
步骤3:对受测试的中断驱动程序源文件进行共享资源检测,得到共享资源列表;
步骤4:对受测试的中断驱动程序源文件进行中断操作行为检测,得到中断操作列表;
步骤5:对中断驱动程序源文件进行分析,得到简要控制流图RCFG,
步骤6:将所有的RCFG互联起来,得到全局的中断互联控制流图IICFG;
步骤7:对IICFG进行深度优先遍历,得到中断驱动源程序的静态分析结果;
步骤8:在西米克斯Simics仿真平台中执行中断驱动程序源文件,验证PR中的所有静态分析结果,
步骤9:对验证后的验证结果进行严重性排序,从而得到了对受测试的中断驱动程序源文件的竞争检测结果。
2.如权利要求1所述的动静态结合的中断驱动程序数据竞争检测方法,其特征在于所述步骤3具体过程如下:
步骤31:设置共享资源列表,将该表初始化为空,所述的共享资源列表包含五个属性,分别是共享资源所在的函数名、该共享资源所在该函数中的行号、共享资源在该函数中的别名、该共享资源的全局的实质名称、该共享资源的读写访问类型;
步骤32:打开中断驱动程序源文件,逐行读取源文件数据,每当读入源文件的一行数据时,通过语法分析该行数据中所包含的语句是否属于共享资源声明语句;所述的共享资源包括:可全局被访问的共享变量、可共享访问的端口号、寄存器地址、可全局被访问的文件句柄,以及上述所有的共享资源的有效的指针形式传播;如果该语句是共享资源声明语句,则将该语句中包含的共享资源的具体信息作为共享资源列表的一行,添 入到共享资源列表中;共享资源的具体信息包括共享资源所在的函数名、该共享资源所在该函数中的行号、共享资源在该函数中的别名、该共享资源的全局的实质名称、该共享资源的读写访问类型。
3.如权利要求1所述的动静态结合的中断驱动程序数据竞争检测方法,其特征在于所述步骤4具体过程如下:
步骤41:读取用户指定测试的配置文件,读入本次测试的函数主入口信息、各个中断处理程序的中断向量号、中断优先级,
步骤42:设置中断操作列表,将该表初始化为空;所述的中断操作列表包含四个属性,分别是中断操作所在的函数名、该中断操作所在该函数中的行号、该中断的向量号、该中断操作的操作类型;
步骤43:打开中断驱动程序源文件,逐行读取源文件数据,每当读入源文件的一行数据时,通过语法分析判断该行数据中包含的语句是否是中断控制语句,如果是,将该中断操作添入到中断操作列表中。
4.如权利要求1所述的动静态结合的中断驱动程序数据竞争检测方法,其特征在于所述步骤5具体过程如下:
步骤51:使用编译器LLVM对源程序进行分析,得到每个函数和中断处理程序的控制流图CFG;
步骤52:读取所有CFG,对每个CFG,依次读取其包含的每个结点;
步骤53:对于CFG中的每个结点,根据前述得到的共享资源列表和中断操作列表,判断该结点是否包含有会影响共享资源的操作,即是否属于共享资源操作、中断开关操作、条件分支判断操作;如果是,则将当前结点从当前CFG中删除,如果否,则什么都不做,判断完当前结点后,继续往下判断下一个结点;
步骤54:每遍历完成一个CFG,则得到了该CFG对应的RCFG。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410324303.9/1.html,转载请声明来源钻瓜专利网。





