From: Padraig Brady (padraig.brady at domain corvil.com)
Date: Tue 01 Oct 2002 - 10:02:03 IST
kevin lyda wrote:
> On Mon, Sep 30, 2002 at 05:45:16PM +0100, Richard Eibrand wrote:
>
>>So what this means is that many final year will need to undertake a
>>final year project of some form. If any of you guys have ideas for
>>projects of varying levels of complexity (both diploma and degree
>>courses catered for),
>
> an amusing project:
>
> add version file support to a linux fs ala vax/vms. so when you
> save a new file, the previous one gets a new version number.
>
> a possibly useful project:
>
> add an fs level precomputed md5/sha1 checksum to a linux fs. the idea
> would be that a write or trunc call to a file would invalidate a
> precomputed checksum. an syscall for the file would either return
> the checksum from a cache or calculate it and then return it.
>
> this might be useful for some sort of tripwire or mirroring type
> utility that would run very frequently to check files for changes.
Note I presume the checksum would be calculated only on the
"getchecksum" syscall? I suppose you could do it on sys_close.
That would allow you to auto merge duplicates (at the
file level (not the block level) (which is usually what you want).
Then if a write changes the file to something unique you can
actually write the unique blocks. Note this may seem difficult
but the hard bits are done already as a lot of sys calls can
already return ENOSPC (because of holes in files etc.).
The obvious tradeoff here is the time it takes to calculate the
md5sum and search the existing md5sums on sys_close, whereas
you could argue that it's better to batch it outside the
filesystem as is currrently the case.
It would still be an interesting project that has the advantages
of not being too difficult and possibly being useful.
What would you call it, COCfs (Copy On Close filesystem)?
Padraig.
This archive was generated by hypermail 2.1.6 : Thu 06 Feb 2003 - 13:19:10 GMT