[net.unix-wizards] Whither-goest-UNIX?

jmn (06/26/82)

       Dave Ihnat made some comparisons of the size of the 
       source code listings of the UNIX kernel (small) with
       the source code listings of the traditional operating
       systems of Honeywell (G.E.), Univac, and IBM (large to
       very large).

       The model that Dave Ignat has advanced is that the
       "traditional operating systems" have gotten to their current
       state of feature fullness (call this ballooning of features
       if you want to color it black) by a process of creeping
       featurism ("this would be neat.....") carried out over many
       years.  Partly right.  Mostly wrong.

       The skeleton for IBM's OS/360, G.E.'s GECOS, UNIVAC's Exec8
       were cast in the mid-60's.  Then, as now, there were a
       zillion features that users/customers wanted/required.  It
       was the hayday of the Multics and TSS projects, and these
       projects sold lots of machines. Promises were made, with
       contracts, to supply everything to everybody.  (I was at the
       SHARE meeting (1966?) where IBM formally decommitted on the
       delivery of TSS.  About 200 360/67 machines had been sold,
       many to universities.  What a wake........)

       The OS/360, GECOS, Exec8 were much less "a promised land"
       than MULTICS or TSS, but the functions were not skimpy.
       Initial deliveries were a little bit raw, to say the least.
       In time, the respective skeletons were fleshed out.

       The original skeleton can be very much recognized in the
       implementations being used today.  Of course, features have
       been added, machinery changed two or three times, and I
       suspect that every piece of code has been rewritten at least
       once.  However, these systems were "born" feature full, and
       have not changed much, expecially when these changes are
       compared to the magnitude of changes in the computer
       hardware.

       (I am omitting from this discussion the transaction
       processing features that have been added to the original
       IBM, G.E., and Univac skeletons.  These are sizable, with
       the bulk of it implemented in common libraries, or utilities
       that operate in a mode between that of UNIX kernel space,
       and UNIX user space.  The VAX hardware contains support for
       kernel, executive, supervisor, and user modes and other
       vendors have implemented similar hardware capabilities.)
       (Why doesn't UNIX use these?)

       The origins of UNIX are different.  In the ashes of MULTICS
       and TSS, UNIX started small, very small.  It has evolved by
       what was described to me as a survival of the fittest
       mechanism.  (Put a bunch of hackers in a pen, close door.
       Once a year or two, open door, gather up any code that is
       being used by 10 or more hackers, package it up and call it
       a UNIX release.)

       I do not regard UNIX as an operatong system for mini-
       computers.  A VAX with 4 Mbytes of memory on it is
       comparable to, or bigger than the IBM 360/65, or G. E. 635,
       or Univac 1108 which were the target machines for the
       design of the "traditional operating systems" in the 60's.

       The view advanced here of the evolution of the "traditional
       operating systems" casts a different light on the question
       of "whither goest UNIX".  Rather than the viewpoint advanced
       by Dave Ignat of

        "Resist all feature changes to UNIX, least it grow
       to the complexity of .........."

       it becomes

        "given that UNIX started as a small system and has
       already grown considerably, is it feasible to
       continue to add the necessary/desired features"

       Of course, this leaves begging the question of whether or
       not there are additional features that are necessary.  I
       believe that there are.

                                        John M Nervik

ignatz (06/26/82)

	John Nervik recently submitted a response to my query, "Whither-
goest-UNIX?", which was an intelligent, informative, and welcome response.
However, I will take minor exception with his position that the dinosaur
execs I used as examples were, essentially, created with the whistles-and-
bells already installed. This is, of course, very much true in most cases;
esp. for the G. E. GECOS exec. But I will staunchly maintain that there is
a continual tendency to load more and more functions into an exec, usually
centering in expanding the file system capabilities. I will offer only one
concrete example, as this is the one I am most recently intimately familiar
with (I hate to admit it...): Honeywell's Level 6 GCOS. Note that this is
NOT the original G. E. GCOS (originally GECOS..); it was redesigned and
rewritten in the late '70s (I believe...it was before my involvment) by
HISI (a bane on their house...) for the new, fantastic, modular Level 6.
It was, in concept, very much a dinosaur-type exec, with strong Multics
influence. Most particularly, the exec was intended to offer a very detailed
and powerful file system, with sequential, direct-access, indexed, etc.
files; intelligent comm protocol handlers; and a sophisticated set of
exec services, access control, and a shell-like (but much more restricted)
command interpreter. How close HISI came to this ideal (or, more accurately,
how far they fell short) is a matter best discussed over many bheers; just
look at where the Level 6 lives in the latest Datamation survey of micros.
Many of the subsequent releases of GCOS 6 were to fix glitches and scrups.
But, nevertheless, they are also packing even more into the exec. Specifically,
a database (IDS II) has been grafted into the file system format; partitioned
disks for the SMs; more exec calls. They intend--if they can remain solvent--
to pack even more into it in the future. Note that all of this is in the
exec--to us, the kernel. Thus, while it is true that there were lots'n'lots
of whistles in the original, there is also quite a trend to continue to
pack it in later. And many of the suggestions for UNIX show a similar,
if possibly unconscious, tendency to assume this is the way to go. Call my
nattering a cautionary tale...

Incidentally, UNIX wasn't a "shut 10 programmers in a room and take what
results...". According to Ritchie and Thompson (Bell System Technical
Journal, July-August 1978, Vol. 57, No. 6, Part 2, "The UNIX Time-Sharing
System"), UNIX was "...not designed to meet any predefined objectives. The
first version was written when one of us (Thompson), dissatisfied with
the available computer facilities, discovered a little-used PDP-7 and
set out to create a more hospitable environment." They go on to relate how
others got interested and began to help. But it is, essentially, the brain-
child of one man. I might suggest--probably superfluously, considering the
audience--that the quoted issue of the BSTJ is a classic, and should be
owned, and well-thumbed, by anyone who claims to be a unix-wizard/guru/user.

				Dave Ihnat
				Analysts International Corporation
		(contracted at)	Bell Telephone Labs, Naperville (Indian Hill)

ignatz (06/26/82)

Apologies. Where I said, "...look where the Level 6 lives in the latest
Datamation survey of micros...", I glipped. The Level 6 is a MINI, not a
micro....
					Dave Ihnat