[comp.unix.wizards] Symbolic links vs. generalized mount

gwyn@brl-smoke.UUCP (09/02/87)

In article <3711@elecvax.eecs.unsw.oz> neilb@elecvax.eecs.unsw.oz (Neil F. Brown) writes:
>The generalised mount.

I support the notion that a generalized "mount" would be better than
symbolic links for most purposes.  I'd like to observe that there are
two general approaches to this, one that is system-wide and the other
that is per-process (and inherited).  The latter is more useful but
would take much more work to implement and has much farther-reaching
ramifications.  Therefore the first approach is probably what we
should push for as a modification to current systems.

rml@hpfcdc.HP.COM (Bob Lenk) (09/05/87)

> >No dot, no dot-dot, and directories have only one link ... Of course, you
> >can access "." and ".." from system calls - it will do what you expect.
> 
> The interesting question is, if your system has or eventually will
> have symbolic links to directories, then what WOULD you expect ".."
> to mean?  Seems like the only thing it COULD mean is what Korn,
> Krell, et al have proposed.

Actually (since I'm familiar with that implementation - HP9000 series 500)
symlinks could be implemented with either ..  interpretation.  ..  is
still implemented in the file system, it's just kept in the inode rather
than a directory entry.  Both .  and ..  work as one would expect in
pathname resolution.  Aside from compatibility with standard UNIX
implementations, I find this to make more sense.  Having to set up .  and
..  from userland leads to lots of possibilities for corrupted file
systems, as well as problems securely implementing networked file systems
(which is why mkdir(2), rmdir(2) and to some extent rename(2) eventually
found their way into many kernels).  Of course in the days when kernels
had to fit in 64K I can appreciate the decision to keep such things out of
them.

By the way, Guy Harris's description of HP systems is essentially
correct.  Series 500 machines use the proprietary Focus chip set; Series
200 and 300 machines use various 68K CPUs, and series 800 machines use
HP-PA (HP Precision Architecture, codenamed "Spectrum").  The project
name for the low-level series 500 kernel was "Sun OS" before Sun
Microsystems existed.

		Bob Lenk
		{ihnp4, hplabs}!hpfcla!rml