在Go软件系统中自动检测并修复并发错误
内容描述
这是我们的ASPLOS论文[1]的代码存储库。 GCatch是一套静态检测器,可以分析大型的真实Go软件。 GFix是一种自动修复工具,可以合成补丁程序,以阻止GCatch检测到的信道滥用(BMOC)错误。 我们在21个开源Go项目(例如Docker,Kubernetes,gRPC)中评估了GCatch和GFix。 GCatch总共检测到149个BMOC错误,其中119个是传统的并发错误,而GFix成功地为124个BMOC错误生成了补丁。 详细的实验数据可以在找到。
[1]刘子恒,朱硕飞,秦伯琴,陈浩和宋林海。 “自动检测和修复Go软件系统中的并发错误。” 在ASPLOS'2021中。