THE RIO FILE CACHE - SURVIVING OPERATING SYSTEM CRASHES

Citation
Pm. Chen et al., THE RIO FILE CACHE - SURVIVING OPERATING SYSTEM CRASHES, ACM SIGPLAN NOTICES, 31(9), 1996, pp. 74-83
Citations number
42
Categorie Soggetti
Computer Sciences","Computer Science Software Graphycs Programming
Journal title
Volume
31
Issue
9
Year of publication
1996
Pages
74 - 83
Database
ISI
SICI code
Abstract
One of the fundamental limits to high-performance, high-reliability fi le systems is memory's vulnerability to system crashes. Because memory is viewed as unsafe, systems periodically write data back to disk. Th e extra disk traffic lowers performance, and the delay period before d ata is safe lowers reliability. The goal of the Rio (RAM I/O) file cac he is to make ordinary main memory safe for persistent storage by enab ling memory to survive operating system crashes. Reliable memory enabl es a system to achieve the best of both worlds: reliability equivalent to a write-through file cache, where every write is instantly safe, a nd performance equivalent to a pure write-back cache, with no reliabil ity-induced writes to disk. To achieve reliability, we protect memory during a crash and restore it during a reboot (a ''warm'' reboot). Ext ensive crash tests show that even without protection, warm reboot enab les memory to achieve reliability close to that of a write-through fil e system. Adding protection makes memory even safer than a write-throu gh file system while adding essentially no overhead. By eliminating re liability-induced disk writes, Rio performs 4-22 times as fast as a wr ite-through file system, 2-14 times as fast as a standard Unix file sy stem, and 1-3 times as fast as an optimized system that risks losing 3 0 seconds of data and metadata.