Here's some more material I'll be placing on Groklaw, so we can incorporate it, page by page, into the UNIX Books methods and concepts database (and if anyone has time to input it, I'd appreciate it). I'll put the new topic, UNIX M&C, in the title of each such article. That way you can find them or avoid them, even if you are not a member.
This is an AT&T press release from January 23, 1990. It mentions both STREAMS and ABIs. Because I don't know what SCO is talking about precisely, it may not be a perfect match, but I'll leave that to others. My purpose is to research; others can evaluate.
I thought there was no STREAMS support in the official kernel, just an add-on set of sources, which I think Caldera used to ship
as part of their system back in their non-loony days, so I'm puzzled by SCO's claim. I'm also puzzled because it is an implementation of a standard. Just because Linux implements something SCO once
licensed an implementation of, that doesn't make SCO the owner of other people's
It's like if we both take a picture of a nice sunset. Just because you
license your picture, it doesn't mean you now own
mine as well.
The sunset is there for us both to photograph. It's the same with standards. If you implement a standard, and I'm sitting right next to you and I implement a standard, the same standard, it's like the two photographs of the sunset. And yes, inevitably they will look a lot alike.
In IBM's IBM's Memorandum in Support of Motion to Confine SCO's Claims to, and Strike Allegations in Excess of, the Final Disclosures we found out about SCO's Streams claims:
Since SCO's new theories challenge the overall structure of Linux and its file system, they appear to implicate virtually every file in Linux, which is comprised of millions lines of code. As a practical matter, the Cargill report effectively pleads a brand new and complex (although still meritless) case.
Even as to the categories of material identified in the Final Disclosures, SCO uses Dr. Cargill to expand considerably the scope of its allegations. For example:
* Header Files: The Final Disclosures identify source code in 29 Open Group header files and 15 Streams-related header files. The Cargill report goes beyond the Final Disclosures, claiming the "totality of the Streams framework". (Cargill Rpt. at 56.) That claim draws in every line in over 150 new files never before mentioned by SCO.
You can read about Linux STREAMS (LiS) here:
LiS is a software package that comprises an implementation of SVR4 compatible STREAMS for Linux. It takes the form of a loadable module for the Linux kernel. LiS installs in any directory on your system, not in the kernel source tree. When it is built it is possible to link pre-compiled STREAMS drivers with it so that when LiS loads into the kernel it brings "application" drivers with it. Alternatively, STREAMS drivers can be coded as loadable Linux drivers which depend upon LiS. In this way, individual STREAMS drivers can be loaded and unloaded dynamically.
LiS includes two adapter drivers to assist in interfacing STREAMS drivers to the Linux Kernel's TCP/IP protocols. One driver (ip_strm_mod) acts as an IP interface driver. It fits below IP using standard ifconfig procedures. It, in turn, communicates downstream with any STREAMS driver using the DLPI protocol in a fashion similar to the manner in which IP on Unix systems interfaces to lower interface drivers. This allows a DLPI STREAMS driver to act as an interface driver to Linux TCP/IP.
A second driver (ldl) sits on top of any existing Linux IP interface driver and presents a DLPI interface to STREAMS drivers above. This allows any STREAMS driver that communicates downstream using DLPI to utilize the services of existing Linux drivers for Ethernet, token ring, etc.
LiS-2.12 and beyond utilizes aggressive multi-tasking in multiple CPU SMP environments. For further information concerning this implementation, see the section on LiS SMP Implementation.
LiS is licensed using the GNU General Public Library License (except for ldl, which is licensed under the standard GNU Public License). This means that you can link proprietary STREAMS drivers with LiS and load the entirety into the Linux kernel without violating license restrictions. This licensing arrangement is intended to encourage commercial software vendors to port STREAMS based driver packages to Linux.
Then on the installing precompiled drivers page, it adds this:
LiS makes provision for you to add your own STREAMS drivers to the build of LiS. You drivers are built outside the LiS source code tree. The object code and configuration information pertaining to your driver must be copied into the LiS source code tree in order to be incorporated into LiS.
I'm not aware of any major distribution that ships STREAMS. It's for legacy UNIX migrations, so far as I know, or that's my understanding, anyway.
Here's the complete AT&T press release, and once again, I've marked parts I think may be legally significant. It is no longer available on AT&T's website, but I have a screen capture and the HTML page, saved a couple of years ago:
FOR RELEASE TUESDAY, JANUARY 23, 1990
WASHINGTON, D.C. -- AT&T's UNIX Software Operation today formally accepted UNIX International's "Roadmap" for the evolution of UNIX(R) System V and said that it would continue to make enhancements to UNIX System V Release 4 available to the industry through UNIX International's "Early Access" program.
The UNIX Software Operation also introduced several new source code products, including an enhanced performance release of the OPEN LOOK(TM) Graphical User Interface, and announced its intent to release OSI protocol products aimed at making UNIX System V the operating system of choice for standards-based network computing.
"We will respond in detail to the Roadmap after we've had a chance to review it in more depth and nail down our development plans and schedules," said Larry Dooling, president of the UNIX Software Operation. "But it's clear that the Roadmap gives the industry, for the first time, a very good idea where UNIX System V is going, and that provides tremendous stability to everybody in the open systems market. UI should be congratulated for a superb job."
The first code to be shipped under UI's Early Access program will be work in progress on a security enhancement for UNIX System V Release 4. Early versions of the software, being developed with the assistance of Amdahl and Motorola, will be shipped to UI beginning in February.
The company also said that UNIX System V Release 4 source code for the Intel 386(TM) and i486(TM) microprocessors is now generally available and that a source code port for the Intel i860(TM) processor will be available early in the third quarter of 1990.
Additional UNIX Software Operation products announced or demonstrated for the first time at the Uniforum trade show here included:
* A new version of the XWIN Graphical Windowing System, a
high-performance, optimized source code implementation of MIT's X Window System software.
* Graphics Services Version 2, a graphics extension to UNIX
System V Release 4, that includes OPEN LOOK Release 2, the XWIN Graphical Windowing System and the X11/NeWS windowing system.
* Availability from Prentice Hall of the generic Application
Binary Interface (ABI) and the WE32000 processor ABI for UNIX System V Release 4.
* A prototype X Window System graphics library for the C++
programming language, developed by Solbourne Computer Inc., which will be licensed through the UNIX Software Operation later this year.
* Release 4 of the TUXEDO Transaction Processing System, a new
platform for developing open, distributed On-Line Transaction Processing applications for the UNIX System.
OPEN LOOK GRAPHICAL USER INTERFACE RELEASE 2.0
The new OPEN LOOK Graphical User Interface (GUI) Release 2.0 source code delivers faster on-screen performance. At the same time, the new release reduces the system memory required to run the interface and applications. For example, the OPEN LOOK interface, the Workspace Manager, the File Manager, the Window Manager, the UNIX operating system and two substantial applications will now run in 6 megabytes of RAM on an Intel 386 based system. In addition, the math coprocessor recommended for the previous release of the OPEN LOOK GUI is no longer required.
The improved performance of the interface is due primarily to new ways of reducing the amount of memory required by interface objects. In some cases, replacing traditional "widgets" with common industry "gadget" technology reduced memory usage up to 25 percent. More significantly, development of new "flattened widget" technology produced up to 75 percent reduction in memory use compared to widgets.
The File Manager in OPEN LOOK GUI Release 2.0 goes well beyond the "file list" of other GUIs, providing icons for files, letting users "drag and drop" data files or their icons into a running application, and providing file naming conventions that enable users to double-click on a data icon and automatically invoke an appropriate application program. The OPEN LOOK Workspace Manager enables a user to tailor the windowing environments from within the interface, without having to drop out of the interface and edit a preference file with a standard text editor.
XWIN GRAPHICAL WINDOWING SYSTEM RELEASE 3.0
Release 3 of the XWIN Graphical Windowing System, based on Version 11 Release 3 of MIT's X Window System, includes device driver support for Ethernet and StarLAN local area networks, a STREAMS interface to these LANs, EGA and VGA display support, and many bug fixes to the MIT code. The 80387 coprocessor, recommended for earlier releases, is no longer required.
In the new implementation, both narrow and wide line drawing are approximately 100 percent faster; stippling is 500 percent faster, point drawing is 87 percent faster. The new release also includes a new version of the "saveunder" feature, used to repair the parts of a screen temporarily covered by menus, that is approximately 20 times more memory efficient than the standard X Window System "saveunder" feature.
The XWIN Graphical Window System is written in ANSI standard C language and utilizes STREAMS technology. It supports any X toolkit and is compatible with UNIX System V Release 3.2.1 and above.
OSI COMMUNICATIONS PLATFORM
In response to growing interest in OSI network communications protocols, the UNIX Software Operation also announced its intent to license a portable, STREAMS-based implementation of the middle and upper layers of the OSI protocol stack. Designed specifically for UNIX System V, the software provides a standard implementation of common ISO and CCITT protocols.
The product will be designed to meet the needs of vendors who wish to comply with requirements of industry standards organizations.
Called the AT&T OSI Communications Platform - Release 1, the product will be available in a variety of packages targeted at requirements of different markets. The first product, Transport Level 4 Connection Oriented Network Service, will be generally available in May. All other components will be generally available by the third quarter. Early versions of the full OSI Communications Platform code will be available to a limited number of vendors under a "Controlled Availability" program beginning in February.
Modular elements of the OSI Communications Platform include two Transport Packages, one supporting OSI Layer 4 Connectionless network service, the other supporting OSI Layer 4 Connection Oriented services; an Application Program Library Interface - Layers 5, 6, and 7 that includes operation, administration and maintenance capabilities; File Transfer, Access and Management (FTAM) libraries; Common Management Information Service Element (CMISE) libraries; an Abstract Syntax Notation (ASN-1) Compiler that helps developers build applications for OSI networks; and a Network Management Protocol (NMP) Common Communication Platform that provides complete support of the OSI Network Management Forum message sets.