From owner-freebsd-fs Thu Apr 26 13:18: 1 2001 Delivered-To: freebsd-fs@freebsd.org Received: from tonnant.cnchost.com (tonnant.concentric.net [207.155.248.72]) by hub.freebsd.org (Postfix) with ESMTP id 37D4A37B422; Thu, 26 Apr 2001 13:17:58 -0700 (PDT) (envelope-from bakul@bitblocks.com) Received: from bitblocks.com (adsl-209-204-185-216.sonic.net [209.204.185.216]) by tonnant.cnchost.com id QAA11266; Thu, 26 Apr 2001 16:17:40 -0400 (EDT) [ConcentricHost SMTP Relay 1.10] Message-ID: <200104262017.QAA11266@tonnant.cnchost.com> To: Terry Lambert Cc: bright@wintelcom.net (Alfred Perlstein), mckusick@FreeBSD.ORG, fs@FreeBSD.ORG Subject: Re: versioned files via snapshot evilness. In-Reply-To: Your message of "Thu, 26 Apr 2001 17:49:33 -0000." <200104261749.KAA24236@usr05.primenet.com> Date: Thu, 26 Apr 2001 13:17:39 -0700 From: Bakul Shah Sender: owner-freebsd-fs@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > > I'm wondering if it might be possible to abuse the ffs snapshot > > stuff to do file versioning ala VMS. > Not really, IMO. > Versioning ala VMS requires kernel globbing, or amazingly > intrusive library modifications, coupled with a guarantee > by programmers that they will only use the preferred APIs > in their applications. Well... you can do this by treating each file as a directory, where each version creates a new file. Each branch in turn creates a subdir. You can do `ls -R ' to list all versions of a file. A release would be a snapshot of all the files. Something like: $ touch foo $ mount -t cvs foo foo $ date > foo $ ls -R foo 1 $ date > foo $ ls -R foo 1 2 $ date > foo/1 ls -R foo 1/1 2 Requires a considerable generalization of the directory concept and a very lightweight mount capability. IMHO dir generalization can be a very rich source of new and interesting design choices. For instance, one should be able to view *any* collection of data as a directory and be able to manipulate this collection in a consistent manner. Of course, this would do considerably more violence to the kernel than just adding kernel globbing and I am sure POSIX would have a hissy-fit but remember, the buzzword these days is `disruptive technology':-) I have a vague recollection that the Thoth OS (David Cheriton's PhD thesis, UofWaterloo) had unified dir and files but no generalized directories beyond that. -- bakul To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-fs" in the body of the message