首页> 外文OA文献 >SMT-based bounded model checking of multi-threaded software in embedded systems
【2h】

SMT-based bounded model checking of multi-threaded software in embedded systems

机译:基于smT的嵌入式系统中多线程软件的有界模型检测

代理获取
本网站仅为用户提供外文OA文献查询和代理获取服务,本网站没有原文。下单后我们将采用程序或人工为您竭诚获取高质量的原文,但由于OA文献来源多样且变更频繁,仍可能出现获取不到、文献不完整或与标题不符等情况,如果获取不到我们将提供退款服务。请知悉。

摘要

Our reliance on the correct functioning of embedded systems is growing rapidly. Such systems are used in a wide range of applications such as airbag control systems, mobilephones, and high-end television sets. These systems are becoming more and more complex and require multi-core processors with scalable shared memory to meet theincreasing computational power demands. The reliability of the embedded (distributed) software is thus a key issue in the system development. In this thesis we describe andevaluate an approach to reason accurately and effectively about large embedded software using bounded model checking (BMC) based on Satisfiability Modulo Theories (SMT)techniques. We present three major novel contributions. First, we extend the encodings from previous SMT-based bounded model checkers to provide more accurate support forvariables of finite bit width, bit-vector operations, arrays, structures, unions and pointers and thus making our approach suitable to reason about embedded software. We thenprovide new encodings into existing SMT theories and we show that our translations from ANSI-C programs to SMT formulas are as precise as bit-accurate procedures basedon Boolean Satisfiability. Second, we develop three related approaches for model checking multi-threaded software in embedded systems. In the lazy approach, we generateall possible interleavings and call the SMT solver on each of them individually, until we either find a bug, or have systematically explored all interleavings. In the schedulerecording approach, we encode all possible interleavings into one single formula and then exploit the high speed of the SMT solvers. In the underapproximation and widening approach, we reduce the state space by abstracting the number of interleavings from the proofs of unsatisfiability generated by the SMT solvers. Finally, we describe and evaluate an approach to integrate our SMT-based BMC into the software engineering process by making the verification process incremental. In particular, our approach looks atthe modifications suffered by the software system since its last verification, and submits them to a partly static and dynamic verification process, which is thus guided by a set of test cases for coverage. Experiments show that our SMT-based BMC can analyze larger problems and reduce the verification time compared to state-of-the-art techniques that use BMC, iterative context-bounding or counterexample-guided abstraction refinement
机译:我们对嵌入式系统正确运行的依赖正在迅速增长。这种系统被广泛用于各种应用中,例如安全气囊控制系统,移动电话和高端电视机。这些系统变得越来越复杂,需要具有可扩展共享内存的多核处理器来满足不断增长的计算能力需求。因此,嵌入式(分布式)软件的可靠性是系统开发中的关键问题。在本文中,我们描述和评估了一种基于可满足性模理论(SMT)的有限模型检查(BMC)来准确有效地对大型嵌入式软件进行推理的方法。我们提出了三个主要的新颖贡献。首先,我们扩展了以前基于SMT的有界模型检查器的编码,从而为有限位宽,位向量运算,数组,结构,联合和指针的变量提供了更准确的支持,从而使我们的方法适合于推理嵌入式软件。然后,我们在现有的SMT理论中提供了新的编码,并且表明从ANSI-C程序到SMT公式的转换与基于布尔可满足性的位精确过程一样精确。其次,我们开发了三种相关方法来对嵌入式系统中的多线程软件进行模型检查。在惰性方法中,我们生成所有可能的交织,并分别对每个交织调用SMT求解器,直到发现错误或系统地研究了所有交织为止。在调度记录方法中,我们将所有可能的交织编码为一个公式,然后利用SMT求解器的高速性。在欠逼近和扩展方法中,我们通过从SMT求解器生成的不满足性证明中抽象出交织的数量来减少状态空间。最后,我们描述和评估一种通过使验证过程递增来将基于SMT的BMC集成到软件工程过程中的方法。特别地,我们的方法着眼于软件系统自上次验证以来遭受的修改,并将其提交给部分静态和动态的验证过程,因此,以一组覆盖率的测试用例为指导。实验表明,与使用BMC,迭代上下文边界或反例指导的抽象提炼的最新技术相比,基于SMT的BMC可以分析更大的问题并减少验证时间

著录项

  • 作者

    Cordeiro Lucas;

  • 作者单位
  • 年度 2011
  • 总页数
  • 原文格式 PDF
  • 正文语种 {"code":"en","name":"English","id":9}
  • 中图分类

相似文献

  • 外文文献
  • 中文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号