Honeywell CP-6
Developer | Honeywell, Inc. |
---|---|
Written in | PL-6 |
OS family | Universal Time-Sharing System |
Working state | Historic, discontinued 2005 |
Source model | Closed source |
Initial release | Beta 1979 |
Marketing target | Former XDS Sigma CP-V customers |
Platforms | Honeywell Level/66 and successors |
Default user interface | Command-line interface |
License | Proprietary |
CP-6 was a computer operating system developed by Honeywell, Inc. in 1976. It was a backwards-compatible work-alike of the Xerox CP-V completely rewritten for Honeywell Level/66 hardware. CP-6 was a command line oriented system. A terminal emulator allowed use of PCs as CP-6 terminals.
History
In 1975, Xerox decided to sell the computer business which it had purchased from Scientific Data Systems in 1969. In a deal put together by Harry Sweatt, Honeywell purchased Xerox Data Systems,[1] and took on the Xerox sales and field computer support staff to provide field service support to the existing customer base. Xerox made available all the spare equipment and supplies and the warehouses containing them. Revenues were shared 60/40 Xerox until CP-6 General Release, and 60/40 Honeywell for three years thereafter. Following that all revenue went to Honeywell.
In the early 1960s Honeywell had built and sold a large number of H200 machines, together with software. In 1970 it had bought the computer business of General Electric.
LADC and the development of CP-6
The CP-6 system including operating system and program products was developed, beginning in 1976, by Honeywell to attract Xerox CP-V users (about 750 Sigma users)[2] to buy and use Honeywell equipment.[3][4] Honeywell employed an initial team of 60 programmers from the Xerox CP-V development team, and added another 30 programmers plus management and staff. Organized by Hank Hoagland and Shel Klee, the team was housed at an old Xerox marketing office on Century Blvd in Los Angeles, which became known as the Los Angeles Development Center (LADC). The new operating system was to be called CP-6.[5] LADC reported administratively to the Honeywell computer group in Phoenix, a facility, which Honeywell had acquired from General Electric.
The first beta site was installed at Carleton University in Ottawa Canada in June of 1979,[4] and three other sites were installed before the end of 1979. Customers worked with LADC both directly and through the Exchange Users group throughout the specification and development period to review and approve the direction of development, the compromises and order of feature implementation.
Comshare, a major Xerox customer, but with their own operating system, needed more capacity to service their rapidly expanding timesharing business. So, with the help of LADC hardware engineers and using the Xerox specifications, Honeywell engineers in Phoenix built 30 Sigma 9 computers, 24 for Comshare and 6 for other customers. This project was initiated in 1978, and the machines were sold at the original retail price and delivered beginning in the third quarter of 1979 until 1981.
Final days
As customers began switching to newly developed systems during the late 1980s, customers support for CP-6 was transferred to ACTC in Canada in 1993. LADC staff, having trained ACTC, were laid off or contracted with ACTC at the end of 1992. CP-6 systems continued to run for many years in the US, Canada, Sweden, the UK, and Germany. CP-6 weathered the Y2K crisis without incident. The final system shutdown was at Carleton University in 2005. CP-6 ran for over 25 years.
CP-6 and its accomplishments, its developers, and its customers are commemorated with a plaque on the community wall at the Computer History Museum (CHM) in Mountain View, California. The CHM also stores all the files from LADC's Director's office that remained when LADC closed in 1993.
The CP-6 product
CP-6 was modeled on Xerox's CP-V. The code was completely rewritten in a new high-level language, PL-6, designed and built expressly for that purpose, rather than in assembly language, because of increasing complexities of the new virtual addressing hardware (such as that in Honeywell’s L66 and DPS 8 line).[6] During the rewrite existing weaknesses were addressed and many new features added.[7][4]
Like CP-V, CP-6 had five access modes, which operated concurrently: batch processing, remote batch, timesharing, transaction processing, and real-time processing. It included multiprogramming and operated on multiple CPUs.[8]
Also like CP-V, the design was an integrated file management system. Files were equally and compatibly available to programs executing in any mode. The files could be sorted in indexed, keyed, relative, or consecutive order.
New in CP-6 was the use of communications and terminal interfaces through minicomputer (Honeywell Level 6)-based front-end processors, connected locally, remotely, or in combination.
CP-6 included an integrated software development system which supported and included a set of language processors: APL,[9] BASIC,[10] COBOL, FORTRAN, RPG, IDP, IDS/II, SORT/MERGE, PL-6, GMAP, and a text formatting program, TEXT. Commonly needed software packages (Pascal, SNOBOL, LISP, SPSS, BMDP, IMSL, SPICEII, and SLAM) were developed by Carleton University.
The operating system supported inter-system communication, job submission and file transfer between CP-6 systems and between CP-6 and CP-V and to and from IBM and other HASP protocol systems. The system used communications and terminal interfaces through a Honeywell Level 6 minicomputer-based front-end processor. Asynchronous, bisynchronous and TCP/IP communications protocols were supported.
The Honeywell hardware system for CP-6 consisted of a mainframe host processor (L66, DPS8, DPS8000, DPS90),[11] to which connected disks, tapes, printers, and card equipment were connected. A high-speed channel connected this host to a Level 6 mini computer, which provided processing and connection for terminals, communications lines, and high-speed channel to remote computers, including LADC and customers for on-line support, new version download and problem fix patches. A terminal emulator allowed use of PCs as CP-6 terminals.
Product additions in the mid eighties included adaptation for DPS8000[12] and DPS90 Bull mainframe computers, newer disks and other peripherals, a UNIX-compatible C compiler, transaction processing services, and OSI and TCP/IP communications via connected UNIX-based systems.
Code production
98% of the coding done for CP-6 was in PL-6. Even most of the CP-V software factory was written in PL-6, which was ported to CP-V from CP-6. A total of 7.2 million lines of code were produced. Half or 3.6 million lines were the OS and the program products. Test cases were 2.0 million lines; software tools including the x account were 1.1 million lines; and the software factory was 0.5 million lines.
The fully burdened cost per net line of code developed over the project life is $10 per line in 1992 dollars. The quality rate achieved is one software error per 387 lines of product code delivered to customers (2.7 errors per 1,000 lines of source code). Thus the average productivity and quality of LADC programmers is much greater than industry averages.
Technical features
- Communication groups (an internal message-passing mechanism among programs and devices), both for transaction processing and internal system communications.
- IMP (Input Manipulation Processor): keyboard macros. Ira says that it was Paul Stendal's idea who wanted to save time in typing long names. We did lots of things to save implementation time.
- VDH: Virtual device handler presented a common, virtual terminal to applications.
- Error and system messages managed from a database, permitting multiple languages.
- Common calling sequence, permitted linking subprograms of several languages into an application program.
- Universal Linker and Debugger for programs written in FORTRAN, COBOL, PL-6, other compiled languages, and assembly code.
- Standard update and merge for all source languages.
- PL-6 a high-level language used to code the operating system and almost all components. We did this because we figured a 6 to 1 advantage in programming productivity.
- Common file system.
- Common math library.
- Multiple local and remote operator consoles.
- Common on-line and batch command language.
- Distributed communication computers (FEPs - front-end processors) for "real time" programs.
- High Level Forms Language with the Forms Processing distributed to FEPs and RFEPs, and used for Transaction Processing and similar applications.
The hardest feature to appreciate, especially for users of CP-V and CP-6, are those features that made CP-V and thus CP-6 unique. We took them all for granted. But the fact that any program would run in any mode simply by reassigning the I/O sources was quite unique at the time. In those days COBOL programs ran in batch and that was a totally separate environment from timesharing. To us it was the natural order of things that any program would run in any mode. CP-6 won benchmarks for some customers by requiring demonstrations of these unique CP-V/CP-6 features. Billy Click of Stephen F Austin University in Nacogdoches, Texas, pointed out that this was completely fair when one wanted a system to replace one with useful and unique features.
Process features
- Module ownership and, for new users, an assigned mentor.
- Modules documented via structured in-line comments. Comments were in a unique form (CNF or Crisman normal Form). System flow and calling sequence documentation was automatically extracted from these CNF code comments.
- Error and system messages extracted from the code via in-line comments.
- Formal design review committee and process.
- Testing through use by developers.
- Parallel development and rapid—even daily—integrations.
- Separate Control Group for system builds and to run regression tests.
- STARLOG database to record and track problems even for early in-house testing, open to customers.
- On line support with direct access to customer computers for analysis and fix.
- Direct contact between customers and developers at Exchange user group meetings to review development and discuss changes that would be in the mutual best interest.
Customer agreement with CP-6 development
Success of the CP-6 product depended critically on support and commitment from the CP-V user community. If they had not believed in the product and its capabilities, and had they not been committed to wait for the time required to develop it, the effort would surely have failed. True, Honeywell provided equipment upgrades to bridge the 3-year gap, but the customers had to believe that the end result, an upgrade of the CP-V system, would be worth the wait. Also they had to believe that the result would be better than any competitive system available in the time frame. They did believe this.
These customers worked with LADC both directly and through the Exchange Users group throughout the specification and development period to review and approve the direction of development, the compromises and order of feature implementation.
Without this close support and commitment of customers, CP-6 could not have been achieved.
CP-6 CUSTOMERS: All sites are US, except where otherwise noted
- indicates non CP-V base—New name business
- Carleton University, Ottawa, Canada
- Science Dynamics Corp
- Bell System Center for Technical Education (BSCTE), Western Electric
- University of Toronto, Toronto Canada
- Zenith Corp.
- Montana State University
- C.A.E., Montreal Canada
- Penn State University
- Indiana University of Pennsylvania
- ComputerSearch
- Bucknell University
- University of Tulsa
- Xerox Corp. (RTCC)
- Xerox Corp. (GSD)
- * State Center Community College District
- Cummins Engine
- Grand Valley State College
- Stephen F Austin University
- Northern Arizona University
- * Macco Enterprises
- Republic Steel
- A.C. Sparkplug Div of General Motors
- Communications Research Center, Ottawa Canada
- EDS Opel Motors Ag, Germany
- * Defense Research, Suffield, Alberta, Canada
- Wadley Institute
- Georgeson & Company
- Hercules Aero Division of Morton Thiokol, Inc
- HI-Q International
- LTV Steel
- University of Southern Mississippi
- University of Wisconsin, Eau Claire
- Marshall Space Flight Center
- * Lane Community College
- * South East Louisiana University
- * American Bureau of Collections
- * Royal Military College, Kingston, Canada
- * College Militaire Royal, Saint-Jean Quebec, Canada
- * Royal Roads Military College, Victoria, Canada
- * Expand Associates, Inc.
- Defense Research, Val Cartier, Canada
- * Norwalk State Technical College
- * Doremus & Company
- * Israeli Aircraft Co, Israel
- * Keycom Electronic Publishing
- Citrus College
- Lockheed Missile & Space Co.
- * The University Council on Admissions, UK
- Rechen-Zentrum Trebur GmbH, Germany
- Robert Gordon’s Institute of Technology, UK
- * Beckman Instruments
- * Western Electric, Atlanta
- Samford University
- * Retail Clerk’s Union
- Wilfrid Laurier University, Waterloo Canada
- * University of Kansas
- * Kyoto University, Japan
- American Israeli Paper – Tel Aviv
- American Israeli Paper – Hadera
- LARGO-MEDAN Ltd, Israel
- British Broadcasting Corporation, UK
- * AG der Dillinger Hüttenwerke, Germany
- * Swedish Telecoms, Sweden
- Swedish Power Board, Sweden
- University of California – Irvine
- * Lockheed Florida
- Portland Community College
- * German Mitsubishi Group, Germany
- * Middle Tennessee State University
- O’Brien & Gere
- * Gunite Division of Kelsey-Hayes
- Health and Safety Executive (HSE), Sheffield, UK
- * Aberdeen U Scotland Unique win over GCOS8
Product Support
CP-6 included an on-line problem reporting and fix system, beginning in 1976. Programmers had direct access to customers' computers, and could fix problems directly on-line. The system used Honeywell's proprietary network.[13] Less urgent fixes were distributed on weekly "Patch tapes" mailed to all customers.
References
- ↑ AUUG, Inc. (December 2002). AUUGN. AUUG, Inc. pp. 23–.
- ↑ IDG Enterprise (16 June 1980). Honeywell Adds Mainframe for Xerox Users, Extends CP-6. Computerworld (IDG Enterprise). pp. 4–. ISSN 00104841.
- ↑ Crisman, P. A.; Bryan, G. Edward (March 1981). "Management of Software Development for CP 6 at LADC". Proceedings of the Fifth Annual Honeywell International Software Conference.
- ↑ 4.0 4.1 4.2 Warren Schwarzmann; IEEE, South Bay Harbor Section Staff (1994). IEEE Aerospace Applications Conference Proceedings. IEEE.
- ↑ P.A. Crisman and Bryan, G. Edward, "Management of Software Development for CP 6 at LADC", Proceedings of the Fifth Annual Honeywell International Software Conference, March 1981.
- ↑ Honeywell, Inc. (June 1988). CP-6 Introduction to PL-6. Retrieved Sep 3, 2014.
- ↑ Bryan, G Edward (March 2012). Not All Programmers Are Created Equal —Redux. 2012 IEEE Aerospace Conference Proceedings.
- ↑ Datamation. Technical Publishing Company. January 1982.
- ↑ Frost, Bruce, "APL and I-D-S/II APL access to large databases". in Association for Computing Machinery (1 April 1983). APL 83, Conference proceedings, Washington, D.C., April 10-13, 1983. The Association. pages 103-107
- ↑ Ronald Brinkman (1 January 1984). Programming in Structured BASIC. Macmillan. ISBN 978-0-02-314870-5.
- ↑ IDG Enterprise (9 March 1981). Honeywell Forecasts Changes in CP-6 Base - Computerworld. IDG Enterprise. pp. 6–. ISSN 00104841.
- ↑ IDG Enterprise (22 October 1979). Computerworld. IDG Enterprise. pp. 34–. ISSN 00104841.
- ↑ Fielding, Roy T (1992). An Empirical Microanalysis of Software Failure Data from a 12-Year Software Maintenance Process. University of California Irvine. p. Master's Thesis.