Gps: Navigating Weak Memory With Ghosts, Protocols, And Separation

ACM SIGPLAN Notices(2014)

引用 162|浏览50
暂无评分
摘要
Weak memory models formalize the inconsistent behaviors that one can expect to observe in multithreaded programs running on modern hardware. In so doing, however, they complicate the already-difficult task of reasoning about correctness of concurrent code. Worse, they render impotent the sophisticated formal methods that have been developed to tame concurrency, which almost universally assume a strong (i.e., sequentially consistent) memory model.This paper introduces GPS, the first program logic to provide a full-fledged suite of modern verification techniques including ghost state, protocols, and separation logic for high-level, structured reasoning about weak memory. We demonstrate the effectiveness of GPS by applying it to challenging examples drawn from the Linux kernel as well as lock-free data structures. We also define the semantics of GPS and prove in Coq that it is sound with respect to the axiomatic C11 weak memory model.
更多
查看译文
关键词
Concurrency,Weak memory models,C/C plus,Program logic,Separation logic
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要