Kai Stadtmüller;马丁·苏尔兹曼;彼得·蒂曼 基于静态跟踪的同步Mini-Go死锁分析。 (英语) Zbl 1483.68056号 Igarashi,Atsushi(编辑),《编程语言和系统》。2016年11月21日至23日,第14届亚洲研讨会,2016年APLAS,越南河内。诉讼程序。查姆:斯普林格。莱克特。注释计算。科学。10017, 116-136 (2016). 摘要:我们考虑了Go编程语言中使用同步通道通信的程序的静态死锁检测问题。在我们的分析中,使用fork运算符扩展的正则表达式捕获程序的通信行为。从描述无死锁程序痕迹的简单标准开始,我们开发了基于自动机的方法来检查死锁自由。通过一系列示例对该方法进行了实现和评估。关于整个系列,请参见[Zbl 1347.68009号]. MSC公司: 68甲15 编程语言理论 68甲19 其他编程范式(面向对象、顺序、并发、自动等) 软件:去;赛车X;戈弗利泽;github;泰皮卡尔 PDF格式BibTeX公司 XML格式引用 \textit{K.Stadtmüller}等人,Lect。注释计算。科学。10017、116--136(2016;Zbl 1483.68056) 全文: 内政部 arXiv公司 参考文献: [1] Boyapati,C.,Lee,R.,Rinard,M.C.:安全编程的所有权类型:防止数据竞争和死锁。摘自:《OOPSLA 2002年会议记录》,第211–230页。ACM(2002)·doi:10.1145/583854.582440 [2] Brzozowski,J.A.:正则表达式的导数。J.ACM 11(4),481-494(1964)·Zbl 0225.94044号 ·数字对象标识代码:10.1145/321239.321249 [3] Christakis,M.,Sagonas,K.:使用静态分析检测异步消息传递错误。收录:Rocha,R.,Launchbury,J.(编辑)PADL 2011。LNCS,第6539卷,第5-18页。斯普林格,海德堡(2011)。doi:10.1007/978-3642-18378-23·Zbl 05867247号 ·doi:10.1007/978-3642-18378-23 [4] Colby,C.:分析并发程序的通信拓扑。摘自:《1995年政治公众人物会议记录》,第202-213页。ACM(1995)·doi:10.1145/215465.215592 [5] Engler,D.R.,Ashcraft,K.:RacerX:对比赛条件和死锁的有效、静态检测。摘自:《2003年SOSP会议记录》,第237–252页。ACM(2003)·数字对象标识代码:10.1145/945445.945468 [6] 围棋编程语言。https://golang.org/ [7] Oracle:一个用于回答go源代码问题的工具。https://godoc.org/golang.org/x/tools/cmd/oracle网站 [8] Gopherlyzer:基于跟踪的mini-go死锁检测。https://github.com/KaiSta/gopherlyzer网站 [9] Hoare,C.A.R.:传达顺序过程。Commun公司。ACM 21(8),666–677(1978)·Zbl 0383.68028号 ·doi:10.1145/359576.359585 [10] Huang,S.T.:一种用于类CSP通信的分布式死锁检测算法。ACM事务处理。程序。语言系统。12(1), 102–122 (1990) ·doi:10.1145/77606.77611 [11] 小林,N.:TyPiCal:基于类型的Pi-Calculus静态分析仪。http://www-kb.is.s.u-tokyo.ac.jp/koba/典型/ [12] 小林,N.:基于类型的像素信息流分析。《学报》第42期(4-5期),第291-347期(2005年)·Zbl 1081.68061号 ·文件编号:10.1007/s00236-005-0179-x [13] 小林,N.:无死锁过程的新型系统。收录:Baier,C.,Hermanns,H.(编辑)CONCUR 2006。LNCS,第4137卷,第233-247页。斯普林格,海德堡(2006)。doi:10.1007/11817949_16·Zbl 1151.68537号 ·doi:10.1007/11817949_16 [14] Ladkin,P.B.,Simons,B.B.:CSP型通信的静态死锁分析。摘自:Fussell,D.S.,Malek,M.(编辑)《响应式计算机系统:实现容错实时系统的步骤》,第89–102页。斯普林格,波士顿(1995)·doi:10.1007/978-1-4615-2271-35 [15] Martel,M.,Gengler,M.:并发程序的通信拓扑分析。收录:Havelund,K.,Penix,J.,Visser,W.(编辑)SPIN 2000。LNCS,第1885卷,第265–286页。斯普林格,海德堡(2000)。doi:10.1007/10722468_16·Zbl 0976.68041号 ·doi:10.1007/10722468_16 [16] Mercouroff,N.:一种用于分析通信过程的算法。摘自:Brookes,S.、Main,M.、Melton,A.、Mislove,M.和Schmidt,D.(编辑)MFPS 1991。LNCS,第598卷,第312-325页。斯普林格,海德堡(1992)。doi:10.1007/3-540-55511-0_16·doi:10.1007/3-540-55511-0_16 [17] Milner,R.:通信和移动系统:\[\圆周率\]-微积分。剑桥大学出版社,纽约(1999)·Zbl 0942.68002号 [18] Ng,N.,Yoshida,N.:并行go-by全局会话图合成的静态死锁检测。摘自:《2016年CC会议录》,第174-184页。ACM(2016)·数字对象标识代码:10.1145/2892208.2892232 [19] 尼尔森,H.R.,尼尔森,F.:具有有限通信拓扑的高阶并发程序。摘自:《1994年POPL会议录》,第84-97页。ACM出版社,1994年1月 [20] Reppy,J.H.:《ML并行编程》,剑桥大学出版社,纽约(1999)·Zbl 0900.68214号 ·doi:10.1017/CBO9780511574962 [21] Sulzmann,M.,Thiemann,P.:可分叉正则表达式。收录人:Dediu,A.-H.,Janoušek,J.,Martín-Vide,C.,Truthe,B.(编辑)LATA 2016。LNCS,第9618卷,第194-206页。斯普林格,海德堡(2016)。doi:10.1007/978-3-319-30000-9_15·Zbl 1443.68097号 ·doi:10.1007/978-3-319-30000-9_15 [22] Williams,A.,Thies,W.,Ernst,M.D.:Java库的静态死锁检测。In:Black,A.P.(编辑)ECOOP 2005。LNCS,第3586卷,第602-629页。斯普林格,海德堡(2005)。doi:10.1007/11531142-26·doi:10.1007/11531142-26 此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。