基于SPIN的SOCKET通信程序分析系统

来源 :南昌大学 | 被引量 : 0次 | 上传用户:psetpsetc
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
形式化方法是验证并发系统可靠性和安全性的一种手段。模型检测是一种对有限状态并发(分布式)系统进行形式化验证的方法,已应用于软件可靠性和安全性验证。从用高级语言开发的并发软件系统中自动抽取模型,使用模型检测工具对所抽取的模型进行验证是模型检测技术领域中的一个研究热点。基于TCP/IP协议的socket(套接字)通信程序可靠性是互联网数据传输的重要基础。本文围绕socket通信程序(C语言开发)可靠性问题,研究基于模型检测工且SPIN的socket通信程序分析与验证技术,主要工作及成果有:1.分析socket通信程序中socket函数调用顺序正确性,即对已通过语法检查及编译,但由于服务和客户程序中socket函数调用顺序异常而导致的程序运行时潜在问题(死锁、内存泄漏、边界数据丢失及其它运行时错误)进行检测。2.针对socket函数调用顺序正确性问题,设计从socket程序源代码抽取模型方案。通过分析socket程序的顺序结构,提出socket通信程序中socket函数调用序列抽取算法;定义Promela消息数据结构和通道;规约socket函数的Promela模型;定义socket函数到Promela映射规则;提出目标Promela模型生成算法,并对模型应满足的性质用线性时态逻辑(LTL)进行规约。3.采用原子序列atomic、偏序规约、Bit-state hashing等策略以提高验证效率,有效地压缩验证过程中的状态空间和存储空间。4.设计并实现socket通信程序分析系统,该系统能够对由于socket函数调用顺序不正确所产生的潜在问题进行检测,如果存在漏洞,系统能够以图形化方式再现代码执行轨迹。该系统具有抽象性、通用性、可扩展性、高效性、实用性,可作为socket通信程序设计人员的有效辅助工具。
其他文献
基于符号定向图(SDG)的故障诊断方法是一种典型的半定量故障诊断方法。该方法是根据系统不同节点之间的影响关系,建立系统模型,一旦系统出现报警,该方法能够及时找出报警原因(根结
以100kt/a乙烯裂解炉为例,探讨乙烯装置裂解单元的主要控制方案和特殊的测量方法,介绍了现场总线技术在乙烯裂解炉测量和控制上的应用等。
自动化分拣系统、无人机配送、快递智能柜等人工智能技术的应用加速了快递企业与其他行业的整合趋势,推动快递企业的业财融合发展。随着快递业务规模的高速增长,产业集中度和
<正>西安兵器工业科技产业基地作为兵器工业集团和陕西省、西安市人民政府深入贯彻落实国家战略,深化战略合作,共同推动军民融合发展的产业园区,具有得天独厚的军工经济背景
股权架构是企业管理的热门话题。科学合理的股权架构是企业持续稳定发展的基石,对外便于引进战略投资者,在连横合纵、并购整合的资本运作中迅速扩大企业规模;对内有利于稳定
招远地区是我国重要的产金基地,胶东地区90%以上的金矿分布在招平与焦家两大断裂带及其所夹区域,然而,关于这些断裂带的演化特征、是否控矿及控矿机理尚存在较大争议。本文在充
21世纪是我国汽车工业即将飞速发展的时代,我国汽车企业正面临一个充满机遇和挑战的市场营销竞争新时代。随着国际上知名的“6+3”汽车集团全部进入我国,国内汽车市场营销环