A Cache Coherent Operating System

Stackable file systems hold promise in terms of extensibility, ease of development and enhancing functionality on-the-fly. However, there are various design and implementation issues that impede the development and use of stackable file systems. Cache coherency is one such issue. Since stackable file system layers cache data to improve performance or provide desired functionality, cache incoherencies occur when concurrent access through different layers is allowed. (This is often called "fan-in".) Although accesses through multiple stack layers are rare, there are quite a few legitimate scenarios which require this form of access. For example, secure file access using an encryption stacking layer and at the same time quick data backup of the raw encrypted data by directly accessing the native file system layer. Heidemann suggested a solution which develops an OS centralized cache manager. However, his solution was not made available or work on commodity operating systems, and was developed at a time when little was known about stackable file systems.

This project attempts to build an infrastructure for transparently maintaining coherence among page cache objects in different layers of a Linux-based stackable file system. Our Linux 2.4 prototype requires no changes to existing file systems, and involves minimal changes to the page cache code, in the form of hooks to a cache manager using a well-defined API. We are enhancing the API, applying it to other OS caches (e.g., inode, directory entry, etc.), considering new architectures and OSs, and evaluating the system. We are also exploring issues in solving more complex coherency problems related to fan-out file systems, size-changing stackable file systems and distributed file systems.

Past Students:

# Name (click for home page) Program Period Current Location
1 Charles P. Wright PhD May 2003 - May 2006 Partner, Senior Software Architect, Illumon (New York, NY)
2 Manish Prasad MS Mar 2002 - Apr 2003 CMU's Parallel Data Lab
3 Charles P. Wright BS (Honors) Dec 2001 - May 2003 Application Software Developer, Walleye Software (New York, NY)

Sponsors:

# Sponsor Amount Period Type Title (click for award abstract)
1 NSF Trusted Computing (TC) $400,000 2003-2006 Sole PI A Layered Approach to Securing Network File Systems