2009/387 [Pathname Reparse Points]
Alan.M.Wright
amw at Sun.COM
Mon Jul 13 00:48:50 PDT 2009
> Ah, this is Aegis. I used Aegis in the mid-80s (with Cadre Teamware).
Sorry, Cadre Teamwork.
> I moved on to SunOS and hadn't realized it was renamed to Domain OS.
>
> Thanks,
>
> Alan
>
> ----- Original Message -----
> Richard L. Hamilton <rlhamil at smart.net> wrote:
>>> > Is this intended to be something like the
>>> conditional symbolic links that have
>>> > been in Apollo Domain system 23 years ago?
>>> >
>>>
>>> I'm not familiar with that proposal. Can you provide
>>> details?
>>>
>>> Thanks,
>>>
>>> Alan
>>
>> As I recall, Apollo Domain OS implicitly made environment variables
>> available
>> to "system calls" (the quotation marks being because the OS was different
>> enough
>> that traditional system calls might often have been implemented more in
>> user
>> space than is typical on the historical Unix code-base). Therefore,
>> symlinks
>> on Domain OS could contain environment variable references; I think these
>> looked
>> like $(name); so they might have symlinks like
>>
>> /usr -> /$(SYSTYPE)/usr
>>
>> where SYSTYPE could be sys5.3 or bsd4.3. (give or take details, I recall
>> that as an
>> actual example)
>>
>> Of course, Apollo also did some other odd things with path names:
>>
>> //nodename
>>
>> referred to the / direcctory of node nodename, as seen by other nodes
>> (similar to AFS /afs/node, or automounter /net/node)
>>
>> `node_data
>>
>> referred to the per-node private data directory (/sys/node_data on a
>> diskful
>> node, something like /sys/node_data.nodeid on the diskful partner of
>> diskless node nodeid)
>>
>> And Apollo had a "typed" filesystem, where types for device files,
>> symlinks, FIFOs,
>> Unix-domain sockets, and unstructured files were only _some_ of the types;
>> others
>> could be for record-oriented files, windowing system entities (scrolling
>> back through
>> a transcript pad with mixed text and graphics would replay the graphics! -
>> a "terminal"
>> based on such a transcript pad was effectively seekable, but append-only
>> for writing),
>> files that incorporated revision history (the ancestor of Rational Rose),
>> etc.
>> In some cases, something that was not a directory could be other than the
>> last
>> level of a path name, in which case it would be up to the object at that
>> level
>> to interpret the "residue" of the pathname.
>>
>> (They also had a form of ACLs long before those were commonplace on other
>> Unix-like OSs.)
>>
>> So while the Apollo was IMO a _brilliant_ example of what's possible, some
>> of what
>> it could do exceeds what would readily fit the Unix model (although it
>> could present
>> a very credible approximation of that model as a subset of what it could
>> do). And
>> thus, examples from an Apollo may be useful in terms of thinking about a
>> problem,
>> but could often not be reasonably implemented to look similar on a more
>> traditional
>> Unix-like OS.
>>
>> (way OT: ISTR one limitation on the Apollo: anything that was executable
>> was
>> effectively also readable, due to some architectural constraint)
>> --
>> This message posted from opensolaris.org
>> _______________________________________________
>> opensolaris-arc mailing list
>> opensolaris-arc at opensolaris.org
>>
>
> _______________________________________________
> opensolaris-arc mailing list
> opensolaris-arc at opensolaris.org
>
More information about the opensolaris-arc
mailing list