长春大学毕业设计改进软件模型检查程序分布式系统中骨干.docVIP

长春大学毕业设计改进软件模型检查程序分布式系统中骨干.doc

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
长春大学毕业设计改进软件模型检查程序分布式系统中骨干

改进软件模型检查程序分布式系统中的骨干 摘要 模型检测技术目前已适用于广泛的问题域。其中,验证软件系统的可靠性变得越来越高意义重大。然而,对于复杂的结构和软件大规模,验证过程中受到来自状态空间爆炸,从而导致资源枯竭和低效率。在本文中,我们提出了一种改进的方法前景和背景下的软件模型检测C源程序的性能验证。在前景阶段,我们直接处理程序本身修剪该程序与断言属性和压缩循环路径提取程序的骨干。随后,程序的骨干是用来产生一个简单的CTL细胞自动机模型,将其应用之后。在背景舞台,我们重新设计了CTL状态自动机的数据结构和改进的模型检验算法,以适应分布式系统中的MapReduce框架。状态集这是满意的CTL财产输出检查基于细胞自动机模型的可满足性。例如在每个部分都说明了整个方法的有效性,以及实验表明,该方法提高了效率程序验证基本上。 关键词:指数-软件模型检验,程序的骨干,分布式系统 一 引言 随着信息技术的飞速发展,软件的应用领域和规模越来越大更大。然而,指数增长量代码容易导致一些不可预测的崩溃。因此,要找出软件设计早期的漏洞 最近的研究关注。我们可以简要地概括软件质量保证的主要方法以下内容:软件测试[ 1 ],模型检验[ 2 ],和定理证明[ 3 ]。但对于软件测试来说,很难检测所有执行路径。定理证明,它不能通过复杂数据自动完成有限的结构和性能。随着增加对软件质量保证的要求,验证软件源代码与模型检查相结合,命名为 软件模型检验,一直是一个重要的方法。然而,随着软件的日益强大功能,系统规模和复杂性也越来越大。在源代码中验证时,很容易生产状态爆炸的问题[4]软件模型检查过程。这个问题严重制约规模验证软件。关键的缓解方法是简化尽可能软件模型检验过程。一些有价值的研究侧重于直接转化程序本身,它可以被认为是在此过程中前景,在最近几年已经进行了。图灵奖得主,E.M.克拉克教授总结他的研究在CBMC [5]和SATABS [6],其支持全或富ANSI-C程序的子集。 CBMC和SATABS用途谓词抽象来检查属性,包括指针安全,数组边界,以及用户提供的说法,但他们有困难核实更复杂软件系统因为它们具有放松的节目中的一个的环某些束缚。一些其它现有工具如SLAM [7],BLAST [8],以及NuSMV [9]也达到良好的效果软件模型检测。此外,伴随着快速近年来分布式系统的进步,除以模型检验状态空间分成几个组,存储他们在不同的服务器,它可以被认为是进程的背景下,是模型检验的一个新趋势。通过消息传递,交换的服务器状态信息,实现分布式搜索。一些研究专注于模型检测算法中的主题分布式系统。例如,J.Barnat已呈现[10]分布式LTL模型检测算法。 本文提出了提高软件的方法模型检查以验证在两个前景的属性和ANSI-C源程序的背景:在前台现阶段,我们把断言属性为指导,修剪部分程序无关的财产;那么我们压缩由最大的强连通循环路径。 在这样,我们可以从软件中提取程序骨干源代码,并作好准备一个简单的CTL自动机模型对于下一阶段;在后台阶段,我们重新设计数据结构和模型检测算法,以适应MapReduce框架。最后,我们输出状态的集合这是满意CTL财产后检查可满足分布式系统。 本文的其余部分安排如下。中科2,我们系统地描述了我们的提取方法项目骨干前景,包括修剪就财产和压缩循环路径。部分3示出了数据结构和模型检测的重新设计在后台基于MapReduce的算法。试验结果和评价包括在第4第5节使得结论并介绍了我们今后的工作。 二 改进软件模型检查程序分布式系统中的骨干 BACKBONE程序在前台提取程序主干,它可以被认为是在前景中的过程中,是直接变换程序本身。该方案是骨干的核心框架通过的过程获得的软件的源代码修剪和压缩。我们可以删除分配语句,分支条件,以及数据变量这是不相干通过提取断言特性项目骨干。同时,复杂的程序结构如循环和递归将墙根,从而简化的CTL自动机模型的复杂性和提高程序验证的效率。 A.修剪相对于财产 相对于财产修剪的有效途径减少程序的大小和复杂的公式,让更多高效的模型检测。从一些现有特聘软件模型策略,相对于财产修剪旨在隐含状态模型。源程序的一些多余的声明微不足道或对验证结果没有影响根据断言属性。在模型检测程序属性,我们应该去掉最大努力这些不相干的部分程序,并确保它不能影响模型检验结果。用字母P表示该程序,VP表示可变设定的P,Expr的(v)至表示变量v的表情,我们提出的财产属性和变量如下之间的依赖: 对于v∈VP,u∈Vφ,如果满足下列条件之一是满意:v∈Vφ; P都带有赋值语句U型格式= Expr的(V); P都与守卫的格式EXPR(U)?Expr(V),其中?∈

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档