The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] Early non-Unix filesystems?
       [not found] <mailman.1.1458266402.23080.tuhs@minnie.tuhs.org>
@ 2016-03-18  2:13 ` Johnny Billquist
  2016-03-18  2:36   ` Charles Anthony
  2016-03-18  2:36 ` [TUHS] TUHS Digest, Vol 4, Issue 12 Doug McIlroy
  1 sibling, 1 reply; 3+ messages in thread
From: Johnny Billquist @ 2016-03-18  2:13 UTC (permalink / raw)


On 2016-03-18 03:00, Warren Toomey <wkt at tuhs.org> wrote:

> It's a bit off-topic, but what were non-Unix filesystems like around 1969-1970?
> The PDP-7 filesystem has i-nodes (file metadata) and filenames separate
> from the i-nodes. This allows hard links and thus a non-tree structured
> filesystem.
>
> This has always struck me to be one of the most important features of
> the Unix filesystem: names separated from the rest of the file metadata,
> and arbitrary hard links so that there is no preferred filename.
>
> Were these features in other contemporaneous filesystems?

I don't know exactly how contemporary ODS-1 is. It's the file system 
used on RSX-11, and I think it should atleast trace back to around 1972, 
but I can't say more for sure.

Anyway, ODS-1, just like the Unix file system, have the directory hold 
just the filename and a file identifier (pretty much the same as inode 
number). There are of course some differences in details, but I would 
say it is very similar to how Unix works. ODS-1 do not have reference 
counting, but instead allows dangling directory entries that do not 
point to valid files. Instead ODS-1 have a generation counter for each 
file identifier, so that when it is reused, links to the old file will 
not accidentally refer to the new file.

I would think that something like Multics had something similar, but I 
have no idea about that one...

	Johnny

-- 
Johnny Billquist                  || "I'm on a bus
                                   ||  on a psychedelic trip
email: bqt at softjar.se             ||  Reading murder books
pdp is alive!                     ||  tryin' to stay hip" - B. Idol


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [TUHS] TUHS Digest, Vol 4, Issue 12
       [not found] <mailman.1.1458266402.23080.tuhs@minnie.tuhs.org>
  2016-03-18  2:13 ` [TUHS] Early non-Unix filesystems? Johnny Billquist
@ 2016-03-18  2:36 ` Doug McIlroy
  1 sibling, 0 replies; 3+ messages in thread
From: Doug McIlroy @ 2016-03-18  2:36 UTC (permalink / raw)


> Were these features [arbitrary hard links] in other contemporaneous filesystems?

Multics had arbitary "links", which were distinguished from "branches"--the
actual file. Links and branches coexisted in directories. Unix was consciously
derived from this model, but simplified so that only links have names
and branches live elsewhere (the inode list). The architecture is
described in http://www.multicians.org/fjcc4.html. This paper is
dates from 1964 or 1965; it was certainly authoritative in 1969.
I don't know whether it evolved further.

Christopher Strachey and Joe Stoy independently conceived a model
isomorphic to Unix for OS 6 at Oxford. The two systems were
essentially contemporaneous.

I am not aware of other systems that allowed multiple names for
one file, though clearly the scent was in the air at the time.

doug


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [TUHS] Early non-Unix filesystems?
  2016-03-18  2:13 ` [TUHS] Early non-Unix filesystems? Johnny Billquist
@ 2016-03-18  2:36   ` Charles Anthony
  0 siblings, 0 replies; 3+ messages in thread
From: Charles Anthony @ 2016-03-18  2:36 UTC (permalink / raw)


On Thu, Mar 17, 2016 at 7:13 PM, Johnny Billquist <bqt at update.uu.se> wrote:

> On 2016-03-18 03:00, Warren Toomey <wkt at tuhs.org> wrote:
>
>
>> I would think that something like Multics had something similar, but I
> have no idea about that one...
>
> Mutlics doesn't separate the name and the data.

It did do something really interesting tho; segments could have multiple
names.

Given a segment "foo", you could "add_name foo bar". "foo" and "bar" now
refer to the same segment, much like a UNIX link. However, if you move the
segment to another directory, the names follow -- they are part of the
segment metadata, not entries in the segment's directory.

This was leveraged by the binder; when binding an executable segment with
multiple entry points, the binder will add the entry points to the names of
the segment, and the shell would select the correct entry point based on
the name.

    bound_dir_cmds_
       list
       rename
       delete

You can use 'bound_dir_cmds_$list' or 'list'.

-- Charles
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20160317/6215ce68/attachment.html>


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-03-18  2:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <mailman.1.1458266402.23080.tuhs@minnie.tuhs.org>
2016-03-18  2:13 ` [TUHS] Early non-Unix filesystems? Johnny Billquist
2016-03-18  2:36   ` Charles Anthony
2016-03-18  2:36 ` [TUHS] TUHS Digest, Vol 4, Issue 12 Doug McIlroy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).