home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Usenet 1994 January
/
usenetsourcesnewsgroupsinfomagicjanuary1994.iso
/
sources
/
std_unix
/
v21
/
194
< prev
next >
Wrap
Internet Message Format
|
1990-12-05
|
4KB
From std-unix-request@uunet.uu.net Tue Oct 9 20:20:35 1990
Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP
id AA22799; Tue, 9 Oct 90 20:20:35 -0400
Posted-Date: 9 Oct 90 14:22:19 GMT
Received: by cs.utexas.edu (5.64/1.77)
From: tct!chip@cs.utexas.edu (Chip Salzenberg)
Newsgroups: comp.std.unix
Subject: Re: Unified I/O namespace: what's the point?
Message-Id: <13392@cs.utexas.edu>
References: <13220@cs.utexas.edu> <13343@cs.utexas.edu> <13390@cs.utexas.edu>
Sender: fletcher@cs.utexas.edu
Organization: Teltronics/TCT, Sarasota, FL
X-Submissions: std-unix@uunet.uu.net
Date: 9 Oct 90 14:22:19 GMT
Reply-To: std-unix@uunet.uu.net
To: std-unix@uunet.uu.net
Submitted-by: chip@tct.uucp (Chip Salzenberg)
According to ok@goanna.cs.rmit.OZ.AU (Richard A. O'Keefe):
>My program *can't* know what's available. If someone comes along
>with a special "open hyperspace shunt" function; my program can't
>benefit from it. If hyperspace shunts are in the global name space
>and posix_open() understands their name syntax, my program will work
>just fine.
Thank you, Richard, for stating well what I have intuitively felt.
(Dan, you wanted a reasoned rebuttal. Very well: here it is.)
It is true that interactive use of UNIX, especially by programmers,
puts a lot of emphasis on the shell interface. If such an environment
were all there were to Unix, then Dan's fd-centric view of the world
could possibly be useful. To use Richard's example: when a hyperspace
shunt became available, its use would require only a change to the
shell source code and a recompilation.
However, the reality of modern Unix use is something else entirely:
pre-packaged utilities, usually available only as binaries, that for
practical purposes *cannot* be changed or replaced. In this
environment, kernel features that require program customization are
unwieldy at best, useless at worst. As long as shells fall into this
category -- "programs usually distributed as binaries" -- fd-centric
UNIX will never be practical.
One could argue that binary-only distribution is evil and should be
stopped. I can agree that binaries are less useful than source code;
in fact, my personal motto is, "Unless you have source code, it isn't
software." Nevertheless, copyright and trade secret law being what
they are, we will continue to see binary-only distributions for the
indefinite future.
Even if source code were for all UNIX programs were freely available,
I doubt that anyone would seriously propose modifying *all* of them
each time a new kind of fd-accessible object were added to the kernel.
Finally, filenames often are stored in places where no shell will ever
see them, such as program-specific configuration files. So in Dan's
hypothetical fd-centric UNIX, we would have to either (1) pass such
filenames to the shell for interpretation, thus incurring a possibly
substantial performance hit; or (2) modify each program to understand
all the names the shell would understand. In my opinion, neither of
these alternatives is viable.
To summarize:
A unified namespace has one great advantage: new types of objects are
immediately available to all programs -- even the programs for which
you do not have the means or the desire to modify and recompile.
--
Chip Salzenberg at Teltronics/TCT <chip@tct.uucp>, <uunet!pdn!tct!chip>
"I've been cranky ever since my comp.unix.wizards was removed
by that evil Chip Salzenberg." -- John F. Haugh II
Volume-Number: Volume 21, Number 194