Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 05 Mar 2000 09:05:29 -0500
From:      "Louis A. Mamakos" <louie@TransSys.COM>
To:        sthaug@nethelp.no
Cc:        kc5vdj@swbell.net, jbryant@ppp-207-193-2-159.kscymo.swbell.net, mbac@nyct.net, freebsd-hackers@FreeBSD.ORG
Subject:   Re: Copy-on-write filesystem 
Message-ID:  <200003051405.JAA17903@whizzo.transsys.com>
In-Reply-To: Your message of "Sun, 05 Mar 2000 09:49:01 %2B0100." <57769.952246141@verdi.nethelp.no> 
References:  <200003040245.UAA10031@ppp-207-193-2-159.kscymo.swbell.net>  <57769.952246141@verdi.nethelp.no>

next in thread | previous in thread | raw e-mail | index | archive | help
> > > Imagine: cp file file2, file and file2 reference the same exact blocks,
> > > but modified chunks of file2 would be given their own private blocks.
> > 
> > This is not a microsoft innovation, actually, I believe it was a VMS
> > innovation.  It's called a generational filesystem.  the original is
> > stored, and later generations of the file are stored as diffs.
> 
> As far as I know, VMS simply stores whole files - no diffs involved. Now
> if you go back to for instance Univac 1100 and the Exec-8 OS (I suppose
> it is OS-1100 now), you'll find a system that *did* store the diffs. In
> the form of punched card images! :-)

Well, not really.  That was mostly an application convention rather than
being done in the OS.  And that all the applications wanted to use
SIR$ SDF to read program file elements was just a coincidence :-)

The cools part of Exec-8 that we still need (we already have sparse
files) are the virtual filesystem bits.  E.g., unloaded files.  People
have been struggling with multi-level storage architectures on UNIX
for years, while this was pretty much a solved problem on these 1's
complement 36 bit dinosars 30 years ago.  

(The notion was that if you didn't use a file in a while, the system
would release the data blocks, and mark the file as "unloaded."  When
you "assigned"/opened one of these files, a system process would cause
the current backup tape to be loaded, and the file restore.  When you
began to get low on disk space, likeway a systen process would start,
and sort all files based on their priority for being unloaded - based
on last reference time, do we have a current backup, who created it, etc.
It would then begin to release the data blocks until you acheived a
configured threshold.)

louie





To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200003051405.JAA17903>