Interesting work - and some ideas for the future
Posted Jul 6, 2006 9:06 UTC (Thu) by ayeomans
Parent article: The 2006 Linux Filesystems Workshop (Part III)
Thanks for the great report on the workshop. It's great to see that innovation is still continuing.
Something struck me, though, in that the thrust is towards performance and reliability improvements at the data level. I'm also interested in work at higher levels, to add more features for the user.
Let me give some examples:
- Versioning file system - ages ago systems such as RSX-11M and VMS had versioning filesystems, that kept incremental copies of data. Nowadays that disk space is much cheaper, it makes increased sense to do this again. Even if systems were damaged by that mythical Linux virus which tried to overwrite files, a versioning filesystem would provide protection.
- Note this can be done on a file block basis - no need to copy all data in a file, just make a copy of the allocation map. This is pretty close to some of the current journalled filesystems, and should be possible to be combined by providing the user with access to earlier file versions.
- Synchronisation-friendly filesystem. Mobile devices increases the demand for synchronised portions of filesystems. By maintaining a "sync point map", i.e. list of files/blocks modified after a nominated sync point, it becomes a fast process to identify portions that need copying. Again, this is pretty close to current JFS facilities.
- De-duplicating filesystem. More useful at enterprise level or for multi-computer backups. Identify duplicates of files - probably by a crypto checksum calculated during or just after writing. Then only store one logical copy of any file. Makes backups faster and reduces disk space requirements. (Think of the number of operating system files held in common across computer networks. Or the mass-mailed .ppt^h^h^h.odp presentation files.)
- Enhanced metadata that gets preserved with files. Including some kind of data origin (e.g. internet download from url), also classification. So that backup and security decisions can be made automatically, including auto-encryption of confidential files when transferring out the system.
- Auto-zip/unzip views - allowing a collection of files to appear like a single zip file, or vice-versa. Currently done at presentation layers, but allowing the filesystem to handle can make the facilities available to all apps. Even the enhanced metatdata mentioned above could be handled as if it were a component of a zip file. Probably a cleaner way to present resource forks and alternate data streams.
to post comments)