Ultrix
Developer | Digital Equipment Corporation |
---|---|
OS family | BSD Unix |
Working state | Historic |
Latest release | 4.5 / 1995 |
Kernel type | monolithic |
Ultrix (officially all-caps ULTRIX) was the brand name of Digital Equipment Corporation's (DEC) native Unix systems. While ultrix is the Latin word for avenger, the name was chosen solely for its sound.
History
The initial development of Unix occurred on DEC equipment, notably DEC PDP-7 and PDP-11 (Programmable Data Processor) systems. Later DEC computers, such as their VAX systems, were also popular platforms on which to run Unix; the first port to VAX, UNIX/32V, was finished in 1978 (the VAX was only released in October 1977). However DEC supplied their own proprietary operating system, VMS, for a long time before they acknowledged Unix.
Absolutely key to bringing Unix to inside the company, DEC's Unix Engineering Group (UEG) was started by Bill Munson with Jerry Brenner and Fred Canter, both from DEC's premier Customer Service Engineering group, Bill Shannon (from Case Western University), and Armando Stettner (from Bell Labs). Other later members of UEG included Joel Magid, Bill Doll, and Jim Barclay recruited from DEC's various marketing and product management groups.
The UEG team, under Canter's direction, released V7M, a modified version of Unix 7th Edition (q.v.).
BSD
Shannon and Stettner worked on low-level CPU and device driver support initially on UNIX/32V but quickly moved to concentrate on working with the University of California, Berkeley's 4BSD. Berkeley's Bill Joy came to New Hampshire to work with Shannon and Stettner to wrap up a new BSD release, incorporating the UEG CPU support and drivers, and to do some last minute development and testing on other configurations available at DEC's facilities. As an aside, the three brought up a final test version on the main VAX used by the VMS development group. No comments were heard from the VMS developers whose terminals greeted them the next morning with a Unix login prompt... UEG's machine was the first to run the new Unix, labeled 4.5BSD as was the tape Bill Joy took with him. The thinking was that 5BSD would be the next version - university lawyers thought it would be better to call it 4.1BSD. After the completion of 4.1BSD, Bill Joy left Berkeley to work at Sun Microsystems. Bill Shannon later moved from New Hampshire to join him. Armando Stettner stayed at DEC and later conceived of and started the Ultrix project.
As an aside, DEC UEG's main VAX, named decvax, was also one of the central nodes in the UUCP and Usenet network. It was the first system to link, in real time for email and Usenet news article, the east and west coasts of the US, Duke University (duke) and UC Berkeley (ucbvax). Later, after some compression capability was added to netnews, decvax was linked with Europe (Vrije Universiteit, Amsterdam) and then Australia (University of Melbourne), making calls at least twice per day each.
Armando Stettner suggested to Bill Doll during a hallway conversation that it was time for DEC to make a native VAX Unix product available to its customers. A proposal was made to Bill Munson who later presented the idea to Ken Olsen. It was said that Olsen grabbed a Unix license plate, slapped it on someone's chest and said let's do it. Thus began Ultrix.
First release of Ultrix
The first Ultrix OS, Ultrix-32, was based on 4.2BSD with some features from System V, and was released in 1984. Its purpose was to provide a DEC-supported native Unix for VAX. It also incorporated several modifications and scripts from Usenet/UUCP experience gained while running decvax. Later, Ultrix-32 incorporated support for DECnet and other proprietary DEC protocols such as LAT. It did not support VAXclustering. Shortly thereafter, DEC also offered a product based upon its V7M release. Given Western Electric/AT&T Unix licensing, DEC (and others) were restricted to selling binary-only licenses. A significant part of the engineering work was in making the systems relatively flexible and configurable despite their binary-only nature. After Ultrix completed its first phase of customer beta trials, Armando Stettner moved to the West Coast to help Steve Bourne start up DEC's Workstation Systems Engineering organization and then worked in a very small group from which spawned DEC's first RISC workstation product, the MIPS-based DECstation 3100, and later the Open Software Foundation
Later on, DEC provided native Unix operating systems on three platforms: PDP-11 minicomputers (where it was one of many available operating systems), VAX based computers (where it was one of two primary OS choices), and DEC's first line of RISC systems, the DECstation workstations and DECsystem servers (where it was the only OS choice offered). Note that the DECstation systems used MIPS processors, not the much later DEC Alpha.
The original versions were known as Ultrix-11 and Ultrix-32, but as the PDP-11 faded from view it became known simply as Ultrix, or to its detractors as Buglix or Scrofulix. When the MIPS versions of Ultrix was released, the VAX and MIPS versions were referred to as VAX/ULTRIX and RISC/ULTRIX respectively. Much engineering emphasis was placed on supportability and reliable operations including continued work on CPU and device driver support (which was, for the most part, also sent to UC Berkeley), hardware failure support and recovery with enhancement to error message text, documentation, and general work at both the kernel and systems program levels. Later Ultrix-32 incorporated some features from 4.3BSD and included DECnet in addition to the standard TCP/IP, and both the SMTP and DEC's Mail-11 protocols.
Notably, Ultrix implemented the inter-process communication (IPC) facilities found in System V (named pipes, messages, semaphores, and shared memory). While the converged Unix from the Sun and AT&T alliance (that spawned the Open Software Foundation or OSF), released late 1986, put BSD features into System V, DEC took the best from System V and added it to a BSD base.
Originally, on the VAX workstations, Ultrix-32 had a desktop environment called UWS, Ultrix Workstation Software, which was based on a version of the X Window System. Later, the widespread version 11 of the X Window System (X11) was added, using a look and feel called DECwindows that was devised in order to mimic the look and feel of the UWS system. Eventually DECwindows also provided the Motif look and feel.
Ultrix ran on multiprocessor systems from both the VAX and DECsystem families. The kernel supported symmetric multiprocessing while not being fully multithreaded. As such, there was liberal use of locking and some tasks could only be done by a particular CPUs (e.g. the processing of interrupts). This was not uncommon in other SMP implementations of that time (e.g. SunOS). Sadly, Ultrix was slow to support many then new or emerging Unix system capabilities found on competing Unix systems (e.g. it never supported shared libraries or dynamically linked executables; delay in implementing bind, 4.3BSD system calls and libraries especially the math libraries; etc.) and suffered from some problems, most notably file system integrity issues (having never picked up the 4.3BSD filesystem and fixes).
Last release
As part of its commitment to the OSF, DEC replaced Ultrix as its Unix offering with OSF/1 for the Alpha, ending Unix development on the MIPS and VAX platforms. OSF/1 had previously shipped in a version for the MIPS architecture in 1991, but was not considered or advertised as a mature product. OSF/1 had a Mach-based kernel with many of the features missing from Ultrix. Again, the UEG (by now the Ultrix Engineering Group) worked at making the new OSF/1-based Digital Unix run well on DEC hardware, with the reliability and maintainability that people came to expect from DEC operating systems.
The last major release of Ultrix was version 4.5 in 1995, which supported all previously supported DECstations and VAXen. There were some subsequent Y2K patches.
See also
External links
- Ultrix FAQ
- Info on Ultrix from OSdata (version as of Jan 11 2006)