Fast non-volatile memories will soon make their appearance on the processor memory bus. They offer the potential for extremely low-latency, high-bandwidth access to persistent files. However, existing interfaces will impose large system call and file system overheads on those accesses, squandering the memories' performance. At the same time, we would like to leverage existing file systems as much as possible, to reduce the cost of adopting these new storage technologies. We present a user space library, called Quill, that avoids system call overheads on most accesses by interposing on file operations and converting them into memory operations. Quill enforces the protections that the file system provides by transferring protection information into the process's page table and accessing files directly via load and store instructions. We describe the Quill system and compare it to a conventional software stack accessing the same storage device.
The authors of these documents have submitted their reports to this technical report series for the purpose of non-commercial dissemination of scientific work. The reports are copyrighted by the authors, and their existence in electronic format does not imply that the authors have relinquished any rights. You may copy a report for scholarly, non-commercial purposes, such as research or instruction, provided that you agree to respect the author's copyright. For information concerning the use of this document for other than research or instructional purposes, contact the authors. Other information concerning this technical report series can be obtained from the Computer Science and Engineering Department at the University of California at San Diego, firstname.lastname@example.org.
[ Search ]