[发明专利]汽车电子器件中断安全隐患检测系统及其检测方法有效
申请号: | 201110096707.3 | 申请日: | 2011-04-18 |
公开(公告)号: | CN102193556A | 公开(公告)日: | 2011-09-21 |
发明(设计)人: | 何积丰;朱龙飞;史建琦 | 申请(专利权)人: | 华东师范大学 |
主分类号: | G05B23/02 | 分类号: | G05B23/02 |
代理公司: | 上海麦其知识产权代理事务所(普通合伙) 31257 | 代理人: | 董红曼 |
地址: | 200062 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 汽车 电子器件 中断 安全隐患 检测 系统 及其 方法 | ||
技术领域
本发明涉及操作系统软件技术领域,具体涉及一种汽车电子器件中断安全隐患检测系统及其检测方法。
背景技术
由于中断具有很多非确定性特点,导致在处理的过程中常会遇到一系列的问题而难于对其有一个比较好的计算机制。在操作系统中,中断提供了一种快速的基于事件的服务程序处理机制,但同时也给操作系统的运行带来了很多的不确定因素,正是由于这些不确定的因素与不同事件处理程序的处理方法的不同,使得原来确定的操作系统行为变得非常不确定。
中断引发的问题主要有两种:第一种是溢出类问题,无论是堆栈的溢出还是引发的全局变量内容的溢出,都将会使进入非正常的状态之中。第二种是数据操作错误,由于中断程序的特殊调用过程与调用的时间的不确定性,造成了原有的数据操作的事务性特征无法得到比较好的保持,从而产生了数据操作错误。这种错误又可以分为数据误读错误与数据脏读错误。
从这两类安全隐患中,可以分别概括出中断的调用性安全性质与数据操作性安全性质。安全性质主要包括三部分内容:
(1)中断只被允许存在于指定上限的嵌套调用。
在处理中断的过程中,应该允许指定上限的嵌套中断处理,过多的中断处理将如上面描述的那样产生堆栈溢出与其它判断条件与保护机制的失效。此类错误同时可能会产生除中断嵌套层数变量与堆栈指针溢出以外的问题,与中断嵌套变量及堆栈指针有关的其它逻辑判断变量值都有可能会产生错误的结果。
(2)中断程序不可修改被打断任务访问的数据环境。
在中断的处理程序中,不许可操作(修改)被中断的任务的数据环境。例如在被中断程序P中,在中断点后使用了全局变量v1,在中断处理程序INTP中,将不能许可对v1进行写操作。否则将会产生中断数据误读的错误。
(3)中断程序不可访问事务性任务操作的数据环境。
在中断的处理程序中,不许可访问(读取)被中断的事务性任务将操作的数据环境。例如在被中断的事务性任务P中,在中断点后操作(修改)了全局变量v1,在中断处理程序INTP中,将不能许可对v1进行读操作。否则将有可能产生中断数据脏读的错误。
根据以上的安全性质,本发明克服了现有技术存在的缺陷,比如传统测试工具很难做到路径全覆盖,无法对中断错误进行完全检测,本发明提供了一种汽车电子器件中断安全隐患检测系统及其检测方法,具有路径全覆盖、检测自动化的有益效果。
发明内容
本发明提供一种汽车电子器件中断安全隐患检测系统,包括:代码预处理模块,其对器件机器码进行代码切片;模型生成模块,其为切片后的代码建立抽象模型;代码验证与分析模块,其检测抽象模型中是否存在中断安全隐患。
本发明还提供一种汽车电子器件中断安全隐患检测系统的检测方法,包括如下步骤:
步骤一:在代码预处理模块中对机器码进行代码切片;
步骤二:在模型生成模块中,为步骤一所得切片后的代码建立抽象模型;
步骤三:在代码验证与分析模块中,检测抽象模型中是否存在中断安全隐患;若存在中断安全隐患,输出缺陷报告;若不存在中断安全隐患,输出安全报告。
其中,步骤一中对机器码进行代码切片,是指保留机器码中的指令包括:读写指令、跳转指令、函数调用指令和中断开闭指令。
步骤三中的中断安全隐患是指代码中因中断发生导致执行错误的指令。
其中,步骤三中断安全隐患的检测是将自动机模型插入机器码中的可中断点,覆盖所有函数可能执行路径,利用模型检测工具进行检测。
其中,模型检测工具包括SPIN model checker、NuSMV、UPPAAL等。
本发明中为了避免编译器的可能引发的错误,从机器码级别用模型检测的方法保证程序的中断安全性。检测是否存在中断安全隐患需要对中断安全隐患满足的条件进行形式化的性质描述,在形式化的性质描述的过程中可以结合自动机模型,本发明使用时态逻辑进行描述。
本发明克服现有技术存在的缺陷,其有益效果包括:可以从机器码层面上开始进行错误检测,从而避免因编译器可能带来的错误;其次,通过检测系统的中断安全隐患有助于在原有正确性的基础上对汽车操作系统提出更高层次的要求;同时,通过对机器码进行切片并选择性地截取机器码局部有用的代码,可以有效地避免模型检查时的状态爆炸问题。
附图说明
图1是本发明汽车电子器件中断安全隐患检测系统的模块示意图;
图2是本发明汽车电子器件中断安全隐患检测系统的检测方法的工作流程图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东师范大学,未经华东师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110096707.3/2.html,转载请声明来源钻瓜专利网。