lepreau%utah-cs@sri-unix.UUCP (02/15/84)
From: Jay Lepreau <lepreau@utah-cs> For the benefit of Internetter's w/o access to net.sources, I have made Glenn's code available by anonymous ftp from here. (I haven't tried it yet-- just assuming it's good, knowing what naming dirs are.) His files are in "shell archive format", and on utah-cs are named dist/namedir-sys.shar dist/namedir-emacs.shar (You may well get this msg before his. He implemented naming dirs for 4.2, and included hacks to the csh and to emacs to deal with them and symlinks better, according to his msg.)
glenn@nsc.UUCP (Glenn Skinner) (02/19/84)
I've posted to new.sources a set of files and diff -c outputs for incorporating naming directories into 4.2 bsd systmes. The concept of a naming directory is taken from "Proposals for enhancements of UNIX on the VAX", UCB CSRG TR/4, August, 1981. This document contains proposals for many features to add to 4.1 bsd; it describes preliminary thoughts on what later turned into 4.2 bsd. Naming directories were proposed, but didn't make it into 4.2, presumably due to lack of time. Each process in a system supporting naming directories has an additional associated directory beyond the normal working and root directories. This new directory, the naming directory, embodies a starting point for paths starting with '@', just as the root directory is the starting point for paths starting with '/'. There is a new namedir system call for changing a process's naming directory; it is analagous to the chdir and chroot system calls. We've had this code installed on our system for about a month now and are quite happy both with the implementation and with the naming directory feature itself. A separate distribution (to net.emacs) contains modifications to emacs to handle naming directories. Along with the changes to the C shell required for naming directory support, we've added a new built in variable "hardpaths" for making life with symbolic links easier. When hardpaths is set, the C shell resolves each directory pathname it encounters to contain no symbolic links, replacing the pathname with an equivalent path containing only hard links. We've found this variable to be a great aid to sanity when coping with an environment rich in symbolic links. -- Glenn Skinner National Semiconductor, Microprocessor Systems Division (408) 733-2600 x 335 {fortune,menlo70,mtxinu}!nsc!glenn