A formal semantics for debugging synchronous message passing-based concurrent programs

被引:0
作者
LI He [1 ]
LUO Jie [1 ]
LI Wei [1 ]
机构
[1] State Key Laboratory of Software Development Environment, School of Computer Science and Engineering,Beihang University
关键词
debugging; synchronous; message passing; concurrent program; operational semantics;
D O I
暂无
中图分类号
TP391.1 [文字信息处理];
学科分类号
081203 ; 0835 ;
摘要
In this paper,we propose a semantic framework to debug synchronous message passing-based concurrent programs,which are increasingly useful as parallel computing and distributed systems become more and more pervasive.We first design a concurrent programming language model to uniformly represent existing concurrent programming languages.Compared to sequential programming languages,this model contains communication statements,i.e.,sending and receiving statements,and a concurrent structure to represent communication and concurrency.We then propose a debugging process consisting of a tracing and a locating procedure.The tracing procedure re-executes a program with a failed test case and uses specially designed data structures to collect useful execution information for locating bugs.We provide for the tracing procedure a structural operational semantics to represent synchronous communication and concurrency.The locating procedure backward locates the ill-designed statement by using information obtained in the tracing procedure,generates a fix equation,and tries to fix the bug by solving the fix equation.We also propose a structural operational semantics for the locating procedure.We supply two examples to test our proposed operational semantics.
引用
收藏
页码:198 / 215
页数:18
相关论文
共 7 条
  • [1] A formal semantics for program debugging[J]. LI Wei1&LI Ning1,2 1State Key Laboratory of Software Development Environment,School of Computer Science and Engineering,Beihang University,Beijing 100191,China 2China Ship Research and Development Academy,Beijing 100192,China.Science China(Information Sciences). 2012(01)
  • [2] Proof systems for message-passing process algebras[J] . M. Hennessy,H. Lin.Formal Aspects of Computing . 1996 (4)
  • [3] COMMUNICATING SEQUENTIAL PROCESSES
    HOARE, CAR
    [J]. COMMUNICATIONS OF THE ACM, 1978, 21 (08) : 666 - 677
  • [4] Lecture Notes in Computer Science .2 Milner,R. Berlin;Heidelberg;New York . 1980
  • [5] A Universal Modular Actor Formalism forArtificial Intelligence .2 Hewitt C,Bishop P,Steiger R. Proceedings of the3rd international joint conference onArtificial intelligence . 1973
  • [6] Dynamic software testing of mpi applications withumpire .2 J. S. Vetter,B. R. de Supinski. Supercomputing . 2000
  • [7] HDD: hierarchical delta debugging .2 Misherghi G,Su Z. Proceedings of the 28th international conference on Software engineering . 2006