home *** CD-ROM | disk | FTP | other *** search
- Submitted-by: peter@ficc.ferranti.com (peter da silva)
-
- I think Dan has a couple of basic problems in his argument here: first,
- looking at extensions to the file system as extensions to "open"; and
- second, missing the huge amount of code that comprises the "normal" UNIX
- environment that depends on a uniform name space. Because of this uniform
- name space, you can change the behaviour of a program (which may well be
- a shell script) by changing the name of a file.
-
- For the first of these problems, it's not just "open" that operates on
- files. It's "creat", "mknod", "link", "chmod", and so on. All these
- calls have to be expanded, duplicated, or replaced. Or you can simply go
- down a level of indirection and change "namei"... and, in fact, virtually
- every version of UNIX has done this in one way or another. The
- "watchdogs" that he refers to are one implementation of what he's arguing
- against.
-
- If this namespace is splintered by creating a whole bunch of different
- methods of opening streams, then you lose this capability. You suddenly
- need to coordinate with the shell ever time you want to refer to a
- file... the shell actually becomes the "super open" Dan's complaining
- about.
-
- Correspondingly, if this namespace is strengthened by adding new types of
- streams to it, the system becomes more powerful. As an *example* of this,
- I brought up AmigaDOS: which has taken this basic concept and extended
- it. In fact, many of the AmigaDOS facilities have been copied from UNIX.
-
- Another problem with Dan's suggestions is that they reduce the name space
- available for normal files: a name space that's already hurt by the UNIX
- option syntax. If you start defining "3" to mean file descriptor 3,
- you're going to run into problems if you "cd /usr/spool/news/comp/std/unix"
- and then type "more *". If you make that "#3", then the namespace
- collision gets less critical, but it's still a problem. This is basically
- what MS-DOS does with the special file names "CON", "PRT", and so on...
- and it gets real old real fast.
-
- We also have some red herrings, but I think Sean has pretty well
- addressed them already in his posting. One he missed is this:
-
- "How about this: Pipes don't belong in the filesystem. Some
- UNIX variants swap pipes out to disk, but most don't."
-
- Whether a pipe is implemented using disk blocks or not is a completely
- separate concept from whether it's visible in the file system.
-
- [ Ok. I am posting this here because it is attempting to discuss a basic
- philosophy of UNIX et al. Once again, I have crossposted this to
- comp.unix.internals, and set followups there. -- mod ]
-
- Volume-Number: Volume 26, Number 75
-
-