* [TUHS] Quick Question: Early Filesystems and Name/Metadata Separation?
@ 2025-09-16 0:09 Warren Toomey via TUHS
2025-09-16 0:46 ` [TUHS] " Clem Cole via TUHS
2025-09-16 2:44 ` Dan Cross via TUHS
0 siblings, 2 replies; 4+ messages in thread
From: Warren Toomey via TUHS @ 2025-09-16 0:09 UTC (permalink / raw)
To: tuhs
Hi all, a quick question. Was Unix the first to separate
a file's name from the other file metadata (thus allowing
hard links where no filename is "better" than the others)?
Thanks, Warren
^ permalink raw reply [flat|nested] 4+ messages in thread
* [TUHS] Re: Quick Question: Early Filesystems and Name/Metadata Separation?
2025-09-16 0:09 [TUHS] Quick Question: Early Filesystems and Name/Metadata Separation? Warren Toomey via TUHS
@ 2025-09-16 0:46 ` Clem Cole via TUHS
2025-09-16 2:44 ` Dan Cross via TUHS
1 sibling, 0 replies; 4+ messages in thread
From: Clem Cole via TUHS @ 2025-09-16 0:46 UTC (permalink / raw)
To: Warren Toomey; +Cc: tuhs
below...
On Mon, Sep 15, 2025 at 8:10 PM Warren Toomey via TUHS <tuhs@tuhs.org>
wrote:
> Hi all, a quick question. Was Unix the first to separate
> a file's name from the other file metadata (thus allowing
> hard links where no filename is "better" than the others)?
>
I'm not 100% I'm following you. As far as I know, a significant innovation
in UNIC from its contemporaries, when Ken and Dennis were first considering
file systems, was the realization that humans and computers have distinct needs
for the file store. So Ken created a first-level (lower) file system
that mapped well to the computer itself, which is 100% flat. A numerical
index identifies files in that linear list or "map" that is common to all
files. Furthermore, the metadata associated with each file is stored in
that single, internal list. But that low-level file system is never
exposed to anything but the OS kernel. A human-oriented file system is
layered on top, where everything is a stream of bytes, and files are given
human-understandable names that are associated with the actual file in the
low-level store. The OS then defines a structure for some of those files
and gives them types (stored in the metadata).
What changed over time with UNIC to UNIX was how the upper-level file
system was exposed to the user programs. The current
hierarchical structure emerged after trying a few others, which was the
beauty of the design. What the kernbel uses is the "i-number," while
humans use a path.
This two-level store was unique as far as I know, so I would believe that
it was indeed first
^ permalink raw reply [flat|nested] 4+ messages in thread
* [TUHS] Quick Question: Early Filesystems and Name/Metadata Separation?
@ 2025-09-16 2:08 Douglas McIlroy via TUHS
0 siblings, 0 replies; 4+ messages in thread
From: Douglas McIlroy via TUHS @ 2025-09-16 2:08 UTC (permalink / raw)
To: TUHS main list
Strachey and Stoy independently invented the same idea at essentially
the same time.
Their operating system, OS1, went into operation before Unix but
didn't get a file system until OS4, in April 1970. So Unix beat it by
six calendar months, but neither influenced the other.
OS6 was published in The Computer Journal in 1972, ahead of Unix.
Source with commentary a la Lions was available. Yet Unix got the
world's attention. Unix was compiled to machine language for the
PDP11, while OS6 was compiled to interpreted code for the Modular One
made by Control Technologies Limited. Unix had time-sharing, while OS6
was single user. And finally Unix was American, while OS6 was British.
Later there was a similarly accidental "race" to port the two
operating systems. I'm not sure whether Wollongong or Oxford won.
Doug
^ permalink raw reply [flat|nested] 4+ messages in thread
* [TUHS] Re: Quick Question: Early Filesystems and Name/Metadata Separation?
2025-09-16 0:09 [TUHS] Quick Question: Early Filesystems and Name/Metadata Separation? Warren Toomey via TUHS
2025-09-16 0:46 ` [TUHS] " Clem Cole via TUHS
@ 2025-09-16 2:44 ` Dan Cross via TUHS
1 sibling, 0 replies; 4+ messages in thread
From: Dan Cross via TUHS @ 2025-09-16 2:44 UTC (permalink / raw)
To: Warren Toomey; +Cc: tuhs
On Mon, Sep 15, 2025 at 8:19 PM Warren Toomey via TUHS <tuhs@tuhs.org> wrote:
> Hi all, a quick question. Was Unix the first to separate
> a file's name from the other file metadata (thus allowing
> hard links where no filename is "better" than the others)?
I wondered if perhaps Multics had the concept, but it appears that it
does not, if I am ready section 2.1 of
https://multicians.org/fjcc4.html correctly. It does have symbolic
links, but those seem to be of the conventional variety we are
familiar with from Unix, and the names associated with a link are
distinguished from the "primary name", which is special. Multics
directory entries of the "branch" variety carry a file's metadata in
addition to the primary name; entries of the "link" variety point to
other entries. Note that, unlike Unix, where inodes contain physical
disk addresses for the file's data (and indirect/doubly-indirect
blocks), Multics directory entries include a VTOC index,
However, it appears that the Berkeley Timesharing System for the
SDS-930 may have had something like hard links. Section 12.9 of
https://bitsavers.org/pdf/sds/9xx/940/ucbProjectGenie/R-21_Time-Sharing_System_Reference_Oct68.pdf
describes the directory structure for that system, and notes that what
we'd call a directory entry is a 3-word record in a hash table
(presumably indexed by file name), with the first two words containing
"string pointers to the file name" and the 4th word containing "a
pointer to a 4-word 'description block'". The "description block" is
described as something containing metadata and sounds an awful lot
like an inode. That document goes on to say, "notice that several
entries in the hash table may point to a single description block; the
associated names are then synonyms for the same object, which can be
referenced by any of them."
The next paragraph continues: "The command DEFINE NAME creates a new
name to point to an existing description block; conversely DELETE NAME
detaches the name from its description block, the description block
itself is lost only if this was the only name pointing to it."
So the Project GENIE OS at least separated file names and metadata,
though it appears that each user had a single directory level.
Regardless, I'd say that meets the requested criteria. I wonder what
DTSS did in this area, if anything.
- Dan C.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2025-09-16 2:45 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-16 0:09 [TUHS] Quick Question: Early Filesystems and Name/Metadata Separation? Warren Toomey via TUHS
2025-09-16 0:46 ` [TUHS] " Clem Cole via TUHS
2025-09-16 2:44 ` Dan Cross via TUHS
-- strict thread matches above, loose matches on Subject: below --
2025-09-16 2:08 [TUHS] " Douglas McIlroy via TUHS
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).