期刊文献+

SOCKET通信程序模型抽取及可靠性验证 被引量:9

Model Extraction and Reliability Verification on SOCKET Communication Program
下载PDF
导出
摘要 形式化方法是验证并发系统可靠性和安全性的重要手段。对高级语言开发的并发系统自动抽取的模型进行形式化验证是模型检测技术领域中的一个研究热点。鉴于socket函数调用顺序不正确产生的运行时潜在问题(内存泄漏、死锁、边界数据丢失等),针对顺序结构的socket程序,通过描述Promela消息数据结构和通道,构建socket函数的Promela模型,定义socket函数到Promela映射规则,提出socket函数调用序列抽取算法及目标Promela模型生成算法,用线性时态逻辑(LTL)刻画socket函数调用顺序应满足的性质,开发基于SPIN的socket通信程序分析系统。实验结果表明,该系统能有效检测socket通信程序的运行时潜在问题。 Formal method is a means to verify the reliability and safety of concurrent systems.Formal verification of model which is automatically extracted from concurrent system built from high level language is a hot research topic in the field of model checking technology.With the focus on potential run time problems(deadlocks,memory leaks,the boundary data loss and other run-time errors) result from abnormal socket function call sequence,this paper analyzed the sequence structure of the socket program,constructed the Promela model of socket functions through the description of message data structures and channels,defined mapping rules of socket function to Promela,proposed the socket function call sequence extraction algorithm and target Promela model generation algorithm,used linear temporal logic(LTL) to describe the property the socket function call sequence shall meet.A socket communication program analysis system was constructed.The experiment result shows that the system can detect the potential run time problems of socket program effectively.
出处 《计算机科学》 CSCD 北大核心 2012年第11期102-105,141,共5页 Computer Science
基金 国家自然科学基金项目(61163005) 中国博士后科学基金(20110491497) 江西省自然科学基金项目(2007GZS1844 2010GZS0150) 江西省科技支撑计划(2009BGB01600) 江西省软科学项目(2010DRB01400) 江西省教育厅科技研究项目(GJJ09050)资助
关键词 SOCKET 模型检测 模型抽取 形式化验证 Socket Model checking Model extraction Formal verification
  • 相关文献

参考文献12

  • 1de la Cdmara P. Checking the reliability of socket based commu- nication software[J]. Int J Softw Tools Technol Transfer, 2009, 11 : 359-374.
  • 2Martinez J, Jimenez C. Software model checking for Internet protocols with java pathfinder[C]//6th International Workshop on Modelling, Simulation, Verification and Validation of Enter- prise Information Systems. 2008:91-100.
  • 3全嘉辉,张欢欢.基于FeaVer的MINIX3验证和改进[J].计算机工程,2010,36(22):46-48. 被引量:1
  • 4Holzmann G J, Smith M H. Software model checking extracting verification models from source code [J]. Software testing, veri- fication and reliability, 2001,11 : 65-79.
  • 5Havelund K,Pressburger T. Model Checking Java Programs U- sing Java PathFinder[J]. Int J STTT, 2000,2 : 366-381.
  • 6Corbett J C, Dwyer M B. Bandera: extracting finite state models from java source code [C] // Software Engineering (Proceedings of the 2000 International Conference). 2000:439-448.
  • 7王大伟,张大方,缪力.一种自动化模型检测ANSI-C程序的实用方法[J].计算机工程与科学,2010,32(4):79-82. 被引量:4
  • 8StevensWR.TCP/IP详解,卷1,协议(英文版)[M].北京:人民邮电出版社,2010.
  • 9StevensWR.TcP/IP详解,卷2,实现(英文版)[M].北京:人民邮电出版社,2010.
  • 10StevensWR.UNIX网络编程(卷1):套接字联网API(第3版)[M].北京:人民邮电出版社,2010.

二级参考文献23

  • 1Chan W, Anderson R J, Beame P, et al. Model Checking Large Software Specifications[J]. IEEE Trans on Software Enginering, 1998,24(7) : 498-519.
  • 2Holzmann G J, Patti J. Validating SDL Specifications: An Experiment[C]//Proc of the 9th Int'l Workshop on Protocol Specification, Testing, and Verification, 1989: 317-326.
  • 3Corbett J C,Dwyer M B, Hatcliff J,et al. Bandera:Extracting Finite-State Models from Java Source Code[C]//Proc of the 22nd Int'l Conf on Software Engineering,2000t439-448.
  • 4Havelund K, Pressburger T. Model Checking Java Programs Using Java PathFinder[J]. International Journal on Software Tools for Technology Transfer, 2000, 2(4): 366-381.
  • 5Brat G, Havelund K, Park S, Visser W. Java PathFinder-Second Generation of A Java Model Checker[C]//Proc of the Workshop on Advances in Verification, 2000.
  • 6Demartini C, Iosif R, Sisto R. Modeling and Validation of Java Multithreading Applications Using SPIN[C]///Proc of the 4th SPIN Workshop, 1998: 5-19.
  • 7Holzmann G J ,Smith M H. A Practical Method for Verifying Event-Driven Software [C]//Proc of the 21st Int'l Conf on Software Engineering, 1999 : 597-607.
  • 8Holzmann G J. The SPIN Model Checker: Primer and Reference Manual[M]. Boston: Addison-Wesley, 2003.
  • 9Demartini C, Iosif R, Sisto R. A Concurrency Analysis Tool for Java Programs[D]. Politecnico di Torino, 1997.
  • 10Ben-Ari M. Development Environments for Spin and Erigone[EB/OL]. [2009-01-18]. http://stwww.weizmann. ac. il/ g-cs/benari/jspin/.

共引文献22

同被引文献101

引证文献9

二级引证文献26

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部