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