Corundum: statically-enforced persistent memory safety
Morteza Hoseinzadeh, Steven Swanson
Abstract
Fast, byte-addressable, persistent main memories (PM) make it possible to build complex data structures that can survive system failures. Programming for PM is challenging, not least because it combines well-known programming challenges like locking, memory management, and pointer safety with novel PM-specific bug types. It also requires logging updates to PM to facilitate recovery after a crash. A misstep in any of these areas can corrupt data, leak resources, or prevent successful recovery after a crash. Existing PM libraries in a variety of languages -- C, C++, Java, Go -- simplify some of these problems, but they still require the programmer to learn (and flawlessly apply) complex rules to ensure correctness. Opportunities for data-destroying bugs abound.
Ask about this paper
Ask your agent about it.
Lune has read the top-tier papers around this one, so every answer names the papers it rests on.
Your agent calls
Lunesearch_papers
Free to start. No credit card required.
Terminal
Install the CLIlune papers get f2d590be-c2f2-4e0c-9519-3f063571c83cCited by top-tier papers12
- IntOS: Persistent Embedded Operating System and Language Support for Multi-threaded Intermittent ComputingYilun Wu, Byounguk Min, Mohannad Ismail, Wenjie Xiong et al.OSDI 2024 · 16 citations
- TENET: Memory Safe and Fault Tolerant Persistent Transactional MemoryMadhava Krishnan Ramanathan, Diyu Zhou, Wook-Hee Kim, Sudarsun Kannan et al.FAST 2023 · 12 citations
- SafePM: a sanitizer for persistent memoryKartal Kaan Bozdogan, Dimitrios Stavrakakis, Shady Issa, Pramod BhatotiaEuroSys 2022 · 10 citations
- FFCCD: fence-free crash-consistent concurrent defragmentation for persistent memoryYuanchao Xu, Chencheng Ye, Yan Solihin, Xipeng ShenISCA 2022 · 9 citations
- SquirrelFS: using the Rust compiler to check file-system crash consistencyHayley LeBlanc, Nathan Taylor, James Bornholt, Vijay ChidambaramOSDI 2024 · 7 citations
Related papers
- Discovering Likely Program Invariants for Persistent MemoryZunchen Huang, Srivatsan Ravi, Chao WangASE 2024 · 1 citation
- Pronto: Easy and Fast Persistence for Volatile Data StructuresAmir Saman Memaripour, Joseph Izraelevitz, Steven SwansonASPLOS 2020 · 55 citations
- Efficiently detecting concurrency bugs in persistent memory programsZhangyu Chen, Yu Hua, Yongle Zhang, Luochangqi DingASPLOS 2022 · 11 citations
- HybridPersist: A Compiler Support for User-Friendly and Efficient PM ProgrammingYiyu Zhang, Yongzhi Wang, Yanfeng Gao, Xuandong Li et al.OOPSLA 2025
- Checking robustness to weak persistency modelsHamed Gorjiara, Weiyu Luo, Alex Lee, Guoqing Harry Xu et al.PLDI 2022 · 13 citations
