From owner-freebsd-hackers Sun Mar 5 6: 6:31 2000 Delivered-To: freebsd-hackers@freebsd.org Received: from whizzo.transsys.com (whizzo.TransSys.COM [144.202.42.10]) by hub.freebsd.org (Postfix) with ESMTP id 3585037BA0C for ; Sun, 5 Mar 2000 06:06:26 -0800 (PST) (envelope-from louie@whizzo.transsys.com) Received: from whizzo.transsys.com (localhost.transsys.com [127.0.0.1]) by whizzo.transsys.com (8.9.3/8.9.1) with ESMTP id JAA17903; Sun, 5 Mar 2000 09:05:29 -0500 (EST) (envelope-from louie@whizzo.transsys.com) Message-Id: <200003051405.JAA17903@whizzo.transsys.com> X-Mailer: exmh version 2.1.1 10/15/1999 To: sthaug@nethelp.no Cc: kc5vdj@swbell.net, jbryant@ppp-207-193-2-159.kscymo.swbell.net, mbac@nyct.net, freebsd-hackers@FreeBSD.ORG X-Image-URL: http://www.transsys.com/louie/images/louie-mail.jpg From: "Louis A. Mamakos" Subject: Re: Copy-on-write filesystem References: <200003040245.UAA10031@ppp-207-193-2-159.kscymo.swbell.net> <57769.952246141@verdi.nethelp.no> In-reply-to: Your message of "Sun, 05 Mar 2000 09:49:01 +0100." <57769.952246141@verdi.nethelp.no> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sun, 05 Mar 2000 09:05:29 -0500 Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > > > 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