From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, HTML_MESSAGE,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 19982 invoked from network); 23 Jun 2020 15:13:48 -0000 Received: from minnie.tuhs.org (45.79.103.53) by inbox.vuxu.org with ESMTPUTF8; 23 Jun 2020 15:13:48 -0000 Received: by minnie.tuhs.org (Postfix, from userid 112) id 30C729C1DB; Wed, 24 Jun 2020 01:13:47 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id C2D809C1B0; Wed, 24 Jun 2020 01:13:10 +1000 (AEST) Authentication-Results: minnie.tuhs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=ccc.com header.i=@ccc.com header.b="Gb3CCTXF"; dkim-atps=neutral Received: by minnie.tuhs.org (Postfix, from userid 112) id AEB409C1AD; Wed, 24 Jun 2020 01:13:07 +1000 (AEST) Received: from mail-qk1-f178.google.com (mail-qk1-f178.google.com [209.85.222.178]) by minnie.tuhs.org (Postfix) with ESMTPS id 090D49C1AC for ; Wed, 24 Jun 2020 01:13:07 +1000 (AEST) Received: by mail-qk1-f178.google.com with SMTP id 80so7267408qko.7 for ; Tue, 23 Jun 2020 08:13:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ccc.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=nJbYrr8+1WUNx1RBTF16gYaH9Qi3+5NdUpU5ry59v4w=; b=Gb3CCTXFrbX/fTlBZJhikPmVyAkHN+jEJF7y4JEV1bdxk1Q8sVP2DBw6hLAPc9USWD 3yaFeNnVgIv/whveMpDfDbVD9pBhlVRQVsewa2XeNZI6eSmaOEBjekJg8BsOkm2infGF JArVPeExRuYlEoZ8JFPdaswi4vdZtEbgptbto= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=nJbYrr8+1WUNx1RBTF16gYaH9Qi3+5NdUpU5ry59v4w=; b=dPMGpaSPGuQcZC2Ur77rA4KKxKF1RWyc9qihTiwwBx2jHbtF3WBvDJAUO8lsFaD/3x RCDNPzMf7lbufUBNrLKwFul0klSVMeoTfCVyl10p2RREXTJd+2gla6h13le6renxnICH K3u3uObcnw82vW0LtFaWCmSeElyE0tyWEzGfVb8hAXSbYwF0scWpU2adb48ZSP+EPaA4 PVe72qtYzvCfiwcceWxqwsdDRXD9DoZOALsF0/GNbAjgW/D9GBOOUR2/tr/TvB4JS+wu db3YSjTg+nBdKXgSWPc9sPlXdL9GBjblH6mfJB9xyoxVree4prygqY20lo7lvWYgZ+vW lhew== X-Gm-Message-State: AOAM532BxCEY6FGnpBb3wuUWNEdneQtJhdTafOW6LJAKVFTTbHTDQLo1 ie2dDPnuTTY4Clsjgw5AWttEI29+UC4BICqyqJTRew== X-Google-Smtp-Source: ABdhPJxXCSvP7untgarMxI+VY4QBa0JZRyVTY3OfHL9/50HoQ0a/COK2E7xh75icKqBiA+OBBHdhOz39kf6a+3HP0tM= X-Received: by 2002:a37:7dc1:: with SMTP id y184mr6987184qkc.476.1592925185676; Tue, 23 Jun 2020 08:13:05 -0700 (PDT) MIME-Version: 1.0 References: <4FC7FA55-5035-41A2-B52F-AE26DC8BED2C@planet.nl> <20200623140124.GR22291@mcvoy.com> In-Reply-To: <20200623140124.GR22291@mcvoy.com> From: Clem Cole Date: Tue, 23 Jun 2020 11:12:40 -0400 Message-ID: To: Larry McVoy Content-Type: multipart/alternative; boundary="000000000000d8ab6605a8c1cb5c" Subject: Re: [TUHS] VFS prior to 1984 X-BeenThere: tuhs@minnie.tuhs.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: The Unix Heritage Society mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: TUHS main list , Paul Ruizendaal Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" --000000000000d8ab6605a8c1cb5c Content-Type: text/plain; charset="UTF-8" I agree with Larry with his observations. The only thing I would add is that Popek and Walker had a file system in the UCLA Locus distributed system for the 11/70 that was published in SIGOPS in late 1970s. In fact, Gerry came up with the idea after a sabbatical @ PARC. But it was not formalized like NFS as a separate (layered) FS, it was just part of the basic Locus FS. Peter Weinberger created the file system switch (FSS) for V8 and in the UNIX world, it was first. Dave Arnovitz used it for RFS in System V, while Perry Flynn and I used it for EFS, both of us after talking to Peter. Rusty and team did the VFS layer Sun @ (Larry will have to tell you who actually built it, I never knew). Rusty and I both published papers in the '85 Summer USENIX (NFS and EFS were contemporaries -- the difference is that Sun gave away NFS and Masscomp was not smart enough to do that). I talked to Steve Kleinman extensively about VFS at one point, and I'm pretty sure he and the rest of the Sun guys had talked to the PARC folks who after Gerry went back to UCLA started working on a DFS. The idea of the state-less (idempotent) file system RPC that NFS used based on stuff PARC did. But I'm not sure PARC had anything like the FSS or the VFS layer. Peter, Dave, and I used a stateful scheme because we chose to have full UNIX FS semantics, which NFS did not. In the end, early NFS was notorious for putting 'holes' in the files because of the automatic seek in every operation and errors not coming until close(2) time. EFS used an RPC and a RUDP layer that Perry and Alan Atlas built, but it was not nearly as flexible as what Sun built [which had a crude interface generator], although until years later when Mike Leibensger built PIG (the Paceline Interface Generator) NFS RPC was always a PITA and not much better in practice than what we had at Masscomp. In fact, the point of the EFS paper was it's all about the recovery when there is a failure/error. If you read his paper, Rusty's point was who cares if there is an error (I've always felt vindicated that while I lost the war, over time everyone came to our way of thinking and now NFS V4 looks a whole lot like EFS did). Having a DFS as a feature was an incredible advance and proved we needed something (and it needed to be standard in all systems). NFS really lead the market with that advance, although it sort of took a few years to make it really good. The fact is that others had the same idea before or at least contemporary with it. That said, and to give the NFS team* a huge amount of credit *(and great applause), the VFS layer was better thought out than the FSS and in fact made it possible to add a lot of different file systems into UNIX later. FSS was much more ad hoc. At LCC, when we built VPROC for TNC a few years later, we used some of the same ideas from VFS and of course used VFS for the file system layer since TNC had to have full POSIX semantics. (It's a shame VPROC never caught on the way VFS did). Clem On Tue, Jun 23, 2020 at 10:02 AM Larry McVoy wrote: > I like to claim credit for creating the ChangeSet concept, the grouping > of a set of deltas across a number of files. But I wasn't the first. > Back when dejanews was a thing and you could search usenet posts in a > date range, if you searched before I started talking about ChangeSets, > you could find 6, count 'em, 6 hits. There was a really obscure system > called Aide De Camp, that had a similar concept. > > But if you searched after I started talking about them you would see > millions of hits. > > So I didn't invent the concept but I sure as heck made the world > understand the concept. > > I suspect Sun could be in a similar position. The VFS concept is > pretty sweet so there might have been someone before Sun. I'll > long odds that if there was, it didn't gain traction until Sun > did it. > > If there is nothing that predates it, then the inspiration was > almost certainly the device driver interface. One interface, > many devices. VFS is the same. > > On Tue, Jun 23, 2020 at 11:09:57AM +0200, Paul Ruizendaal wrote: > > When googling for File System Switch or Virtual File System most sources > mention Sun NFS and SysVr3 as the earliest implementations. Some sources > mention 8th Edition. > > > > I did a (short) search on FSS/VFS in earlier, non-Unix OS???s (Tenex, > Multics, CTSS, etc.), but none of those seem to have had a comparable > concept. > > > > Does anybody recall prior art (prior to 1984) in this area? > > > > Paul > > -- > --- > Larry McVoy lm at mcvoy.com > http://www.mcvoy.com/lm > --000000000000d8ab6605a8c1cb5c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I agree with Larry with his observations.=C2=A0 =C2=A0T= he only thing I would add is that Popek and Walker had a file system in the= UCLA Locus distributed system for the 11/70 that was published in SIGOPS i= n late 1970s.=C2=A0 In fact, Gerry came up with the idea=C2=A0after a sabba= tical=C2=A0@ PARC.=C2=A0 =C2=A0But it was not formalized like NFS as a sepa= rate (layered) FS, it was just part of the basic Locus FS.

Peter Weinberger created the file system switch (FSS) for V8 and in t= he UNIX world, it was first.=C2=A0 =C2=A0 Dave Arnovitz used it for RFS in = System V, while Perry Flynn and I used it for EFS,=C2=A0both of us after ta= lking to=C2=A0Peter.=C2=A0 =C2=A0Rusty and team did the VFS layer Sun @ (La= rry will have to tell you who actually=C2=A0built it, I never knew).=C2=A0 = Rusty and I both published papers in the '85 Summer USENIX (NFS and EFS= were contemporaries -- the difference is that Sun gave away NFS and Massco= mp was not smart enough to do that).

I talked to Steve= Kleinman extensively about VFS at one point, and I'm pretty sure he an= d the rest of the Sun guys had talked to the PARC folks who after Gerry wen= t back to UCLA started working on a DFS.=C2=A0 =C2=A0The idea of the state-= less=C2=A0(idempotent) file system RPC that NFS used based on stuff PARC di= d.=C2=A0 =C2=A0But I'm not sure PARC had anything like the FSS or the V= FS layer.=C2=A0 Peter, Dave, and I used a stateful scheme because we chose = to have full UNIX FS semantics,=C2=A0which NFS did not.=C2=A0 In the end, e= arly NFS was notorious for putting 'holes' in the files because of = the automatic seek in every operation and errors not coming until close(2) = time.

EFS used an RPC and a RUDP layer that Perry and = Alan Atlas built, but it was not nearly as flexible as what Sun built [whic= h had a crude interface generator], although until years later when Mike Le= ibensger built PIG (the Paceline Interface Generator) NFS RPC was always a = PITA and not much better in practice than what we had at Masscomp.
=
In fact, the point of the EFS paper was it's all about the= recovery when there is a failure/error.=C2=A0 If you read his paper, Rusty= 's point was who cares if there is an error (I've always felt vindi= cated that while I lost the war, over time everyone came to our way of thin= king and now NFS V4=C2=A0looks a whole lot like EFS did).

Having a DFS as a feature was an incredible=C2=A0advance and proved w= e needed something (and it needed to be standard in all systems).=C2=A0 =C2= =A0NFS really lead the=C2=A0market with that advance, although it sort of t= ook a few years to make it really good.=C2=A0 The fact is that others had t= he same idea before or at least contemporary with it.

= That said, and to give the NFS team a huge a= mount of credit (and great applause),=C2=A0the VFS layer was better tho= ught out than the FSS and in fact made it possible to add a lot of differen= t file systems into UNIX later.=C2=A0 FSS was much more ad hoc.=C2=A0=C2=A0=

At LCC, when we built VPROC for TNC a few years later= , we used some of the same ideas from VFS and of course used=C2=A0VFS for t= he file system layer since TNC had to have full POSIX semantics.=C2=A0 (It&= #39;s a shame VPROC never caught on the way VFS did).

= Clem


On Tue, Jun 23, 2020 at 10:02 AM Larry McVoy <lm@mcvoy.com> wrote:<= br>
I like to claim = credit for creating the ChangeSet concept, the grouping
of a set of deltas across a number of files.=C2=A0 But I wasn't the fir= st.
Back when dejanews was a thing and you could search usenet posts in a
date range, if you searched before I started talking about ChangeSets,
you could find 6, count 'em, 6 hits.=C2=A0 There was a really obscure s= ystem
called Aide De Camp, that had a similar concept.

But if you searched after I started talking about them you would see
millions of hits.

So I didn't invent the concept but I sure as heck made the world
understand the concept.

I suspect Sun could be in a similar position.=C2=A0 The VFS concept is
pretty sweet so there might have been someone before Sun.=C2=A0 I'll long odds that if there was, it didn't gain traction until Sun
did it.

If there is nothing that predates it, then the inspiration was
almost certainly the device driver interface.=C2=A0 One interface,
many devices.=C2=A0 VFS is the same.

On Tue, Jun 23, 2020 at 11:09:57AM +0200, Paul Ruizendaal wrote:
> When googling for File System Switch or Virtual File System most sourc= es mention Sun NFS and SysVr3 as the earliest implementations. Some sources= mention 8th Edition.
>
> I did a (short) search=C2=A0 on FSS/VFS in earlier, non-Unix OS???s (T= enex, Multics, CTSS, etc.), but none of those seem to have had a comparable= concept.
>
> Does anybody recall prior art (prior to 1984) in this area?
>
> Paul

--
---
Larry McVoy=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 l= m at mcvo= y.com=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0http://www.mcvoy.com= /lm
--000000000000d8ab6605a8c1cb5c--