DragonFly BSD
DragonFly kernel List (threaded) for 2003-09
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: Ridiculous idea: Cache as ramdisk?


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Tue, 23 Sep 2003 10:15:05 -0700 (PDT)

:Hm, my only suggestion is to abstract it just a little further - say
:every file has a different "importance" - from (say) 0 for "not
:important at all, I don't care if it suddenly disappears" to (say) 9 for
:"very important, make sure it's in NV storage ASAP"
:
:This way the behaviour isn't tied to any particular mechanism, and that
:should theoretically make it easier for both implementers (who can use a
:different mechanism, should it come down to that) and users (who don't
:have to think in terms of "buffer cache" and other concepts they don't
:necessarily understand well.)

    "Ick".  This brings non-deterministic behavior to a new level :-).
    It may sound good on paper, but it will never work in practice because
    in practice there are only two levels of importance:  (1) You don't 
    care if it goes away, or (2) It had better not go away.

:Journalling file systems seem to be rather optimized for recovery, vs
:the impression I get when I hear the word "journalling" - I think of
:something more like CVS, where you can get any older version of a file
:merely by requesting a different tag.  Such a "write once" filesystem
:would be very nice to use, I think.
:
:Anyway... back to your regularly scheduled BSD forking...
:
:-Chris (in Vancouver, if you care)

    There are major advantages to being able to access a filesystem
    as of some date in the past.  For example, it makes 'undelete' work
    very precisely.  Another huge advantage to a properly journaled
    filesystem is that one can run a continuously streaming 'incremental
    backup' of the filesystem as well as use such a stream to maintain a
    fully independant off-site copy of the filesystem in near real time.

					-Matt
					Matthew Dillon 
					<dillon@xxxxxxxxxxxxx>



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]