跳到主要内容
研究论文

证明非阻塞算法不会阻塞

出版:2009年1月21日出版历史
跳过抽象节

摘要

如果并发数据结构实现满足以下三个活动性标准之一:等待自由、锁定自由或障碍自由,则认为它是非阻塞的。非阻塞算法的开发人员旨在满足这些标准。然而,到目前为止,他们对非平凡算法的证明仅是手工的铅笔和纸的半形式证明。本文提出了第一个全自动工具,允许开发人员确保他们的算法确实是非阻塞的。我们的工具使用了可靠保证推理,同时克服了在存在相互依赖的活性属性时合理推理的技术挑战。

工具书类

  1. M.Abadi和L.Lamport。连接规范。ACM事务处理。程序。语言系统。,17(3):507--534, 1995.谷歌学者谷歌学者数字图书馆数字图书馆
  2. B.Alpern和F.B.Schneider。定义活力。信息处理。莱特。,21(4):181--185, 1985.谷歌学者谷歌学者交叉引用交叉引用
  3. J.Berdine、B.Cook、D.Distefano和P.W.O'Hearn。具有变形堆的程序的自动终止证明。在CAV’06:计算机辅助验证会议中,LNCS第4144卷,第386-400页。斯普林格,2006年。谷歌学者谷歌学者数字图书馆数字图书馆
  4. S.D.布鲁克斯。共享变量并行语言的完全抽象。信息计算。,127(2):145--163, 1996.谷歌学者谷歌学者交叉引用交叉引用
  5. C.Calcagno、P.O'Hearn和H.Yang。局部动作和抽象分离逻辑。在LICS’07:计算机科学中的逻辑研讨会上,第366-378页。IEEE,2007年。谷歌学者谷歌学者数字图书馆数字图书馆
  6. C.Calcagno、M.J.Parkinson和V.Vafeiadis。针对细粒度并发的模块化安全检查。在SAS'07:静态分析研讨会,LNCS第4634卷,第233-248页。施普林格,2007年。谷歌学者谷歌学者数字图书馆数字图书馆
  7. R.Colvin和B.Dongol。使用合理的订单验证锁闭自由度。《ICTAC’07:计算理论方面的国际学术讨论会》,LNCS第4711卷,第124-138页。施普林格,2007年。谷歌学者谷歌学者数字图书馆数字图书馆
  8. B.Cook、A.Gotsman、A.Podelski、A.Rybalchenko和M.Y.Vardi。证明这些程序最终会有好处。在POPL'07:编程语言原理研讨会上,第265-276页。ACM,2007年。谷歌学者谷歌学者数字图书馆数字图书馆
  9. S.Doherty、L.Groves、V.Luchangco和M.Moir。一种实用的无锁队列算法的形式化验证。在2004年福特:网络和分布式系统形式化技术会议上,LNCS第3235卷,第97-114页。斯普林格,2004年。谷歌学者谷歌学者交叉引用交叉引用
  10. B.Dongol公司。规范非阻塞程序的进度属性。在ICFEM’06:正式工程方法会议,LNCS第4260卷,第284-303页。斯普林格,2006年。谷歌学者谷歌学者数字图书馆数字图书馆
  11. X.Feng、R.Ferreira和Z.Shao。并发分离逻辑与假设保证推理的关系。2007年ESOP:欧洲编程研讨会,LNCS第4421卷,第173-188页。施普林格,2007年。谷歌学者谷歌学者数字图书馆数字图书馆
  12. A.Gotsman、J.Berdine、B.Cook和M.Sagiv。螺纹模数形状分析。PLDI’07:编程语言设计与实现会议,第266-277页。ACM,2007年。谷歌学者谷歌学者数字图书馆数字图书馆
  13. T.L.Harris、K.Fraser和I.A.Pratt。一种实用的多字比较与转换操作。DISC’02:分布式计算研讨会,LNCS第2508卷,第265-279页。施普林格,2002年。谷歌学者谷歌学者数字图书馆数字图书馆
  14. D.Hendler、N.Shavit和L.Yerushalmi。一种可扩展的无锁堆栈算法。在SPAA'04:算法和体系结构并行性研讨会上,第206-215页。ACM,2004年。谷歌学者谷歌学者数字图书馆数字图书馆
  15. M.Herlihy先生。无需等待同步。ACM事务处理。程序。语言系统。,13(1):124--149, 1991.谷歌学者谷歌学者数字图书馆数字图书馆
  16. M.Herlihy、V.Luchangco和M.Moir。无障碍同步:以双队列为例。在ICDCS'03:分布式计算系统国际会议,第522至529页。IEEE,2003年。谷歌学者谷歌学者数字图书馆数字图书馆
  17. M.赫利希和N.沙维特。多处理机编程的艺术。Morgan Kaufmann,2008年。谷歌学者谷歌学者数字图书馆数字图书馆
  18. C.B.琼斯。(并行)程序的规范和设计。IFIP大会,第321-332页。北荷兰,1983年。谷歌学者谷歌学者
  19. N.Kobayashi和D.Sangiorgi。移动进程锁自由的混合型系统。CAV’08:计算机辅助验证会议,LNCS第5123卷,第80-93页。施普林格,2008年。谷歌学者谷歌学者数字图书馆数字图书馆
  20. O.Lichtenstein、A.Pnueli和L.D.Zuck。过去的荣耀。在《程序逻辑会议》(Conference on Logics of Programs)中,LNCS第193卷,第196-218页。斯普林格,1985年。谷歌学者谷歌学者数字图书馆数字图书馆
  21. S.Magill、J.Berdine、E.M.Clarke和B.Cook。形状分析的算术强化。在SAS'07:静态分析研讨会,LNCS第4634卷,第419-436页。施普林格,2007年。谷歌学者谷歌学者数字图书馆数字图书馆
  22. Z.Manna和A.Pnueli。反应和并发系统的时间逻辑:规范。施普林格出版社,柏林,1992年。谷歌学者谷歌学者数字图书馆数字图书馆
  23. H.Massalin和C.Pu。无锁多处理器操作系统内核(抽象)。《操作系统评论》,26(2):1081992年。谷歌学者谷歌学者交叉引用交叉引用
  24. K.L.McMillan。关于生动性的循环合成推理。《CHARME’99:正确硬件设计和验证方法会议》,LNCS第1703卷,第342-345页。斯普林格,1999年。谷歌学者谷歌学者数字图书馆数字图书馆
  25. 迈克尔先生。高性能动态无锁哈希表和基于列表的集合。在SPAA'02:算法和体系结构并行性研讨会上,第73-82页。ACM,2002年。谷歌学者谷歌学者数字图书馆数字图书馆
  26. M.M.Michael和M.L.Scott。简单、快速、实用的非阻塞和阻塞并发队列算法。在PODC’96:分布式计算原理研讨会上,第267-275页。ACM,1996年。谷歌学者谷歌学者数字图书馆数字图书馆
  27. J.S.摩尔。通过单处理器视图对多处理器结果进行机械检查的证明。《系统设计中的形式化方法》,14(2):213-2281999。谷歌学者谷歌学者数字图书馆数字图书馆
  28. P.W.奥赫恩。资源、并发性和局部推理。西奥。计算。科学。,375(1--3):271--307, 2007.谷歌学者谷歌学者数字图书馆数字图书馆
  29. A.普努利。关于程序的从全局到模块化时序推理的过渡。在并发系统的逻辑和模型中,第123-144页。斯普林格,1985年。谷歌学者谷歌学者数字图书馆数字图书馆
  30. J.雷诺兹。分离逻辑:用于共享可变数据结构的逻辑。LICS’02:计算机科学中的逻辑研讨会,第55-74页。IEEE,2002年。谷歌学者谷歌学者数字图书馆数字图书馆
  31. S.Sarkar、P.Sewell、F.Zappa Nardelli、S.Owens、T.Ridge、T.Braibant、M.Myreen和J.Algale。x86多处理器机器代码的语义。本卷。谷歌学者谷歌学者
  32. H·辛普森。四时隙全异步通信机制。IEE会议记录,137(1):17-301990。谷歌学者谷歌学者
  33. R.K.Treiber。系统编程:处理并行性。技术报告RJ 5118,IBM Almaden研究中心,1986年。谷歌学者谷歌学者
  34. V.瓦菲亚迪斯。模块化细粒度并发验证。博士论文,剑桥大学计算机实验室,2008年。谷歌学者谷歌学者
  35. V.Vafeiadis和M.J.帕金森。依赖/保证和分离逻辑的结合。在CONCUR’07:并发理论会议,LNCS第4703卷,第256-271页。施普林格,2007年。谷歌学者谷歌学者数字图书馆数字图书馆
  36. M.瓦尔迪。并发程序的验证——自动机理论框架。逻辑,51:79-981991。谷歌学者谷歌学者交叉引用交叉引用
  37. M.T.Vechev和E.Yahav。派生可线性化的细粒度并发对象。PLDI’08:编程语言设计与实现会议,第125-135页。ACM,2008年。谷歌学者谷歌学者数字图书馆数字图书馆
  38. I.William N.Scherer、D.Lea和M.L.Scott。可扩展的同步队列。在PPoPP'06:并行编程原理与实践研讨会上,第147-156页。ACM,2006年。谷歌学者谷歌学者数字图书馆数字图书馆

索引术语

  1. 证明非阻塞算法不会阻塞

              建议

              评论

              登录选项

              检查您是否可以通过登录凭据或您的机构访问本文。

              登录

              完全访问权限

              • 发布于

                封面图片ACM SIGPLAN注意事项
                ACM SIGPLAN通知 第44卷第1期
                流行'09
                2009年1月
                453页
                国际标准编号:0362-1340
                EISSN公司:1558-1160
                内政部:10.1145/1594834
                期刊目录
                • 封面图片ACM会议
                  POPL'09:第36届ACM SIGPLAN-SIGACT编程语言原则研讨会会议记录
                  2009年1月
                  464页
                  国际标准图书编号:9781605583792
                  内政部:10.1145/1480881

                版权所有©2009 ACM

                如果复制品不是为了盈利或商业利益而制作或分发的,并且复制品的第一页载有本通知和完整引文,则允许免费制作本作品的全部或部分数字或硬拷贝以供个人或课堂使用。必须尊重ACM以外的其他人对本作品组成部分的版权。允许用信用证进行摘要。要以其他方式复制或重新发布,在服务器上发布或重新发布到列表,需要事先获得特定许可和/或付费。从请求权限[电子邮件保护]

                出版商

                计算机协会

                美国纽约州纽约市

                出版历史

                • 出版:2009年1月21日

                检查更新

                限定符

                • 研究论文

              PDF格式

              以PDF文件查看或下载。

              PDF格式

              电子阅读器

              使用eReader联机查看。

              电子阅读器