Font Size: a A A

Revamping the system interface to storage-class memory

Posted on:2013-03-03Degree:Ph.DType:Thesis
University:The University of Wisconsin - MadisonCandidate:Volos, HarisFull Text:PDF
GTID:2458390008988217Subject:Computer Science
Abstract/Summary:
Emerging storage-class memory (SCM) devices, such as phase-change memory and memristors, provide the interface of memory but the persistence of disks. SCM promises low-latency storage, which can benefit modern applications ranging from desktop applications that frequently flush data to stable storage, to large-scale web applications that perform lots of dependent lookups such as social-network graphs. Existing operating-system interfaces, however, fail to expose the full capabilities of SCM. Under the current storage model, the OS mediates every access to storage for protection and to abstract details of the specific storage device through a driver. This causes unneeded complexity and lower performance for SCM, which can be accessed directly through the memory interface rather than peripherally via I/O requests.;This dissertation revisits the system interface to storage in light of SCM. The central hypothesis is that direct access to SCM from user mode can form the basis for a flexible high-performance storage architecture. Direct access promises much higher performance by avoiding the cost of entering the kernel and removing layers of code. Direct access also enables flexibility by letting applications customize the storage system to their needs so as to avoid paying generic overheads and therefore further improve performance.;The dissertation presents the design, implementation, and evaluation of an operating-system storage architecture based on direct access to SCM. The architecture comprises two parts. The first part, Mnemosyne, exposes persistent memory to user-mode programs. Persistent memory enables programs directly store and access common in-memory data structures, such as trees, logs, and hash tables, in regions of SCM (private to each program). While persistent memory enables low-latency flexible storage, it sacrifices the common file-system interface that enables application interoperability by organizing data under a global logical namespace for easy access and protecting data for secure sharing. The second part, Aerie, fills this gap. Aerie exposes a flexible file-system interface to SCM using user-mode libraries that access file data directly through memory. Aerie retains both the benefits of direct access and the sharing and protection features of file systems.
Keywords/Search Tags:Memory, Storage, SCM, Interface, Direct access, System
Related items