资 源 简 介
Abstract
Recoverable virtual memory provides transactional guarantees in a flexible way for low-level programming. We describe the design of the Berkeley RVM~(BRVM), a user-space library for recoverable virtual memory with a focus on simplicity and usability. BRVM enforces two transactional guarantees: atomicity and durability. Consistency and isolation are left to higher-level implementations to be layered on top of BRVM. Other capabilities, such as nesting and concurrency, are also purposely left out of the design of BRVM, following the principle that BRVM should only implement the minimal functionality necessary to serve as a building block for additional features. Under typical usage, the user must specify the regions of memory involved in a transaction. We provide a static analysis tool that attempts to detect automatically the regions of recoverable memory accessed by a user"s program at compile time, enhancing BRVM"s robustness and ease of use.
Release <