paperbot · PL 论文追踪

全部论文 待读 收藏

P2 PerSeVerE: persistency semantics for verification under ext4

PerSeVerE:ext4 下用于验证的持久性语义
POPL 5(POPL)2021匹配度 4/10 · 该论文属于程序验证与形式语义领域,涉及文件系统持久性语义和模型检测,与用户对形式化验证的兴趣有部分重叠,但未涉及AI/LLM、浮点程序分析或贝叶斯程序分析等核心方向。引用 21 inbox
Michalis Kokologiannakis, Ilya Kaysin, Azalea Raad, Viktor Vafeiadis
crossref: 2026-09-10

AI 速览

一句话:形式化 ext4 与 C/C++ 弱内存的持久性语义,提出模型检测验证方法并发现编辑器缺陷。

现代文件系统行为复杂,程序员难以理解,容易导致数据损坏等严重软件缺陷。本文形式化 Linux ext4 文件系统的持久性语义,并将其与 C/C++ 的弱内存一致性语义集成,以精确刻画执行文件 I/O 的程序在持久化与并发内存交互下的行为。基于该语义,作者提出一种有效的模型检测验证方法,用于检查使用文件系统的程序。评估中,该方法发现并报告了 vim、emacs、nano 等常用文本编辑器中的缺陷。

问题
现代文件系统行为复杂且难以理解,程序进行文件 I/O 时易产生数据损坏等严重缺陷,需要精确语义以支持正确性验证。
方法
形式化 Linux ext4 的持久性语义,并与 C/C++ 弱内存一致性语义集成,进而开发模型检测方法来验证使用文件系统的程序。
评估
通过模型检测工具在真实程序上评估,发现并报告了 vim、emacs、nano 等常用文本编辑器中的缺陷。
原文摘要(Abstract)

Although ubiquitous, modern filesystems have rather complex behaviours that are hardly understood by programmers and lead to severe software bugs such as data corruption. As a first step to ensure correctness of software performing file I/O, we formalize the semantics of the Linux ext4 filesystem, which we integrate with the weak memory consistency semantics of C/C++. We further develop an effective model checking approach for verifying programs that use the filesystem. In doing so, we discover and report bugs in commonly-used text editors such as vim, emacs and nano.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot1151,
  title = {PerSeVerE: persistency semantics for verification under ext4},
  author = {Michalis Kokologiannakis and Ilya Kaysin and Azalea Raad and Viktor Vafeiadis},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {5},
  number = {POPL},
  year = {2021},
  doi = {10.1145/3434324}
}