Verification, Model Checking, and Abstract Interpretation - 25th International Conference, VMCAI 2024, London, United Kingdom, January 15-16, 2024, Proceedings, Part II
Verification, Model Checking, and Abstract Interpretation - 25th International Conference, VMCAI 2024, London, United Kingdom, January 15-16, 2024, Proceedings, Part II
复制标题
验证、模型检查和摘要解释 - 第 25 届国际会议,VMCAI 2024,英国伦敦,2024 年 1 月 15-16 日,会议记录,第二部分
DOI:
10.1007/978-3-031-50521-8_2
复制
发表时间:
2024
期刊:
影响因子:
--
通讯作者:
Bodenmüller S
中科院分区:
文献类型:
--
作者:
Bodenmüller S
Non-volatile memory (NVM) technologies offer DRAM-like speeds with the added benefit of failure resilience. However, developing concurrent programs for NVM can be challenging since programmers must consider both inter-thread synchronisation and durability aspects at the same time. To alleviate this, libraries such as FliT have been developed to managetransformations to durability, allowing a linearizable concurrent object to be converted into a durably linearizable one by replacing the reads/writes to memory by calls to corresponding operations of the FliT library. However, a formal proof of correctness for FliT is missing, and standard proof techniques for durable linearizability are challenging to apply, sinceitself is not durably linearizable. In this paper, we study the problem of proving correctness of transformations to durability. First, we develop an abstractpersistency library(called) that operationally characterises transformations to durability. We prove soundness ofvia a forward simulation coupled with aprophecy variableused as an oracle about future behaviour. Second, we show correctness of the library FliT by proving that FliTrefinesunder the realisticmemory model, i.e., the persistent version of TSO memory model implemented by Intel architectures. The proof of refinement between FliT andhas been mechanised within the theorem prover KIV. Taken together, these proofs guarantee thatis also sound wrt transformations to durability.