Download presentation
Presentation is loading. Please wait.
Published byTyra Titterington Modified over 10 years ago
1
Layered File Systems basant rajan, 02Aug2013
2
About the talk … Only meant as an overview. More about the whys & whats than the hows Not original work
3
About the presenter Basant Rajan Currently CEO, Coriolis Technologies, Pune Previously, file system developer at VRTS Reachable at basant+socnet at gmail.com
4
References Stackable Design of File Systems by John Shelby Heidemann File System Implementation by Daniel A. Menascé Wikipedia Stackable Layers: An Object-Oriented Approach … by Page Jr., Popek & Guy
5
Whats the fuss all about? Storage media couldnt care less about information We, on the other hand, care only about information File systems end up bridging the gap Provide user with a way to organize information Handles intricacies of mapping this info onto media Too complex to be dealt with as a monolith
6
Layered FS, first cut Application programs Logical file system (meta data) File organizer (bmap, allocator, free space manager) Basic file system (block i/o to disks) I/O control (disk drivers) Devices (disks)
7
Many ways to skin a cat … Logical file systems of various hues Need to insulate the application layer The emergence of the VFS interface Crystallizes expectation from a logical file system Allows for various implementation of that interface Object oriented view of a file system
8
What more could one want? Incrementally extending capabilities Without re-implementing Handling interface evolution Insulate existing extensions Allowing for change Stacking, another form of layering Depends on symmetric interfaces betwixt layers
9
Why the VFS is not sufficient Allows only en bloc replacement of a file system Does nothing to help mix and match or extension Morphing code is not desirable Availability Licensing Copyrights Extensions using NFS expensive Extending VFS interface not practical either
10
Stacking & Cache Coherence Stacked layers are not always accessed at the top Layers end up caching data for performance Caches must be logically coherent across the stack Necessitates a framework for cache coherence Third party solutions unlikely
11
Stacking and Overheads Ideally a stack of thin layers would be great Practically, defining the layer boundaries is tough Layering injects a small overhead, but it all adds up Featherweight layers Restricted capabilities Leverages host layer to reduce overheads
12
Stacking, different strokes Composition (layer on top) Substitution (nfs on x, y, z) Multi-layer (back-ups) Cooperation (transport layer) Compatibility (interface changes) Interposition (mirroring)
13
UnionFS, an example Overlays files/directories from other file systems Presents a unified, coherent view Supports both read only and read write access Can implement copy on write capability
14
FUSE, another example User space file system A kernel driver interfaces with a user space component All file system logic implemented in user space Easy to prototype with Pay a price in context switches
15
Stacking sans stacks I/O managers (hierarchies) I/O handlers Pre and post processors Filters Transformers Classes of i/o
16
Thank you …
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.