[X-Unix] rsync & ssh [DRIFT]

William H. Magill magill at mcgillsociety.org
Fri Jul 9 13:58:58 PDT 2004


On 09 Jul, 2004, at 15:30, Brian Medley wrote:
> On Fri, Jul 09, 2004 at 12:44:27PM +0100, David Ledger wrote:
>>> It would not have to break every shell script.  For example,
>>> the behavior of some versions Solaris depends on your path.
>>
>> The behavior of _all_ versions of Unix depends on your PATH.
>
> True, but I am not aware (but I don't have significant
> experience) with many Unix variants that contain multiple
> versions of the same utility.  Solaris had a directory tree
> called xpg4 (iirc) - something like /usr/xpg4/bin,
> /usr/xpg4/sbin, etc.  /usr/bin/ps was the old compatible ps and
> /usr/xpg4/bin/ps was the "new" open group standards compliant ps.
>
> This is what I was getting at.

But the "path" concept is the very core of Unix. It has been since the 
beginning. If you don't understand the implications of the "path" then 
you don't understand Unix.

UNIX has two primary "roots" -- BSD and SystemV. BSD Unix meetings 
(Usenix) were long hair and sandals; System V meetings (Unisphere) were 
suits. Or put another way BSD Unix had its roots firmly in the academic 
world, System V was a product used for "real world", i.e. production 
use. For many years, SystemV had something like 90% market share. (In 
the form of  "black box" systems from SCO!)

Each of those "universes" had duplicates of the same commands, but they 
behaved differently, different output, different arguments, AND same 
arguments, different output!

As part of the constant efforts to gain "market share," (new clients) 
ALL Commercial Unix variants implemented a "universe" concept so that 
one could switch from one style to another.  By the early 90s every 
"unix" out there had two directory trees for the primary "command" 
structure. The ability to do this is one of the strengths of Unix.

As Unix evolved, compliance with things like the SVID test (for System 
V compatibility) and the assorted POSIX and UNIX(tm) branding test 
suites have homogenized things to the point where today, one never 
finds a real BSD or a real SystemV environment. Then GNU and Linux got 
into the mix and generated another batch of variants... now the same 
program would take either arguments.

xpg4 (1992) is one of the Unix standards. Solaris is itself a 
bastardization of Unix. The old Sun OS was predominantly BSD Unix. Sun 
worked a deal with ATT(or was it IBM) to generate a new Operating 
system -- the product was called Solaris, and was basically a SystemV 
Unix. But Sun was confronted with a major conversion problem -- it's 
existing customer base was BSD folk, but it was trying to lure new 
customers who were System V folks. (DEC and IBM did the same thing.... 
And remember, Unix was invented on a PDP! Sun did not exist as a 
company for another 10 years! Bill Joy was still in grade school!)

OSF was much the same thing - Digital was the only vendor who ever 
implemented OSF/1 -- every other vendor made their existing Proprietary 
versions of Unix "compliant" with the OSF/1 standard. How? by modifying 
the path command as much as anything.

The we get to Linux... there is NOTHING common about Linux. Try running 
Alpha Linux sometime, or even Linux on the PowerPC. Those variants are 
quite different from Wintel Linux by Red Hat  (which is what everybody 
REALLY means when they say Linux.)

Darwin (i.e. OSX) happens to derive from FreeBSD, so it's dominant look 
and feel is BSD Unix. The BSD Unix look and feel is quite different 
than Linux or System V.  Many, if not most, of the differences are 
proprietary. That is the main reason why neither GNU nor Linux conform 
to the Unix standards. [The discussion of how "Standards" can be 
proprietary is a separate can of worms.]

T.T.F.N.
William H. Magill
# Beige G3 - Rev A motherboard - 768 Meg
# Flat-panel iMac (2.1) 800MHz - Super Drive - 768 Meg
# PWS433a [Alpha 21164 Rev 7.2 (EV56)- 64 Meg]- Tru64 5.1a
# XP1000  [Alpha EV6]
magill at mcgillsociety.org
magill at acm.org
magill at mac.com



More information about the X-Unix mailing list