Servers with a smile: 1 A/UX

The Macintosh II required an additional Memory Management Unit chip before it could run A/UX.

Apple was from its inception a personal computer company. When Apple II computers had penetrated education, science, and many other markets, attempts to provide more business-like systems, such as the Apple III, were catastrophic failures. These were reflected in sales figures: Apple II models sold a total of more than 5 million units, compared with a mere 120,000 Apple III.

With so many Apple computers in US high schools, universities, and research labs, it might have made sense to provide servers to go with them. But servers were enterprise systems, and Apple’s lack of understanding of that market kept it well away for many years.

Apple itself used Sun servers internally, but with the advent of the Macintosh II in 1987, its engineers realised that they at last had their own hardware platform capable of running Unix to good effect. The result was A/UX, the first of Apple’s server products, and the subject of this first article in my series on those products. A/UX is of course an abbreviation for Apple UNIX.

Although the idea to port Unix to the Mac II came from within Apple, at least part of the work was carried out under contract by UniSoft, a specialist Unix porting house which also ported Unix to the Motorola 68030 and 88100 RISC for Motorola. It was announced in February 1988, and version 1.0 was based on AT&T Unix System V.2.2 with many extensions to support streams, networking, the Fast File System (FFS), and more. It was fully compliant with POSIX, meeting US Government contract-bidding requirements.

Strategically it seemed important at the time, as without such an operating system, Apple would not have been able to bid for contracts to supply Macs to US Federal Government and its many funded organisation. On the strength of this, and with improvements which were launched in A/UX 3.0 at the end of 1991, Apple formed a new business division to sell enterprise systems into large businesses, US government, and higher education.

However A/UX, whilst not exactly a lemon, was not the flagship product which it could have become:

  • The Macintosh II was not an ideal platform for Unix. Its CPU was a Motorola 68020 running at 16 MHz, and it had a 68881 floating point maths co-processor, but not the accompanying Motorola 68851 paged MMU. Instead it came fitted with its own Apple MMU which did not implement virtual memory. Before you could run A/UX on a Mac II, you had to install a PMMU upgrade (which came as part of the A/UX bundle, at first), and even then A/UX ran slowly compared with competing Unix systems.
  • The A/UX port was fairly vanilla. Although this ensured compatibility, there was no reason to pay over the odds for a Mac if all you wanted to do was run POSIX Unix.
  • Apple chose to offer Mac OS (then System 6, later System 7) running on top of A/UX, and not the other way round. Although this did allow you to exchange data between Unix apps running straight on A/UX (including X Windows) and Mac apps running on top of A/UX, this was not so attractive to Mac users.
  • A/UX was resource-hungry, and even when more capable Mac IIx models shipped in 1988, common hard disk and memory configurations were inadequate. For example, a decent A/UX installation took around 70 MB of hard disk space, and the standard higher configuration of Mac II or IIx had an 80 MB internal hard drive.

At the end of 1991, when System 7 had already been available for six months, Apple released A/UX 3.0, it last major revision and for most users its zenith. By that stage the outgoing high-end Mac was the IIfx, with a Motorola 68030 running at a breakneck 40 MHz and integral MMU, and the first of the new Quadras with their 68040 CPUs were starting to appear.

At last A/UX was starting to come into its own, and Apple enthusiastically pre-announced version 4 to be released in 1993 or 1994. This was to be developed in conjunction with IBM, combining parts of its AIX implementation of Unix, and run on the new PowerPC processors developed by Motorola, IBM and Apple.

You can still (for the moment at least) find a full FAQ for A/UX 3 here, an archived Penelope site with plenty of screenshots (think Terminal!) and other information here, the Server Admin manual here, and a Basic Skills manual here. Additional sites are listed here on DMOZ.

What actually happened was very different: Apple next offered customised IBM AIX systems as the Apple Network Server, and the Macintosh Application Environment (MAE) which let you run System 7 apps on Sun hardware. I will consider those next.

MMU = memory management unit; PMMU = paged memory management unit. These were hardware units which undertook most of the work of managing memory for implementations of virtual memory. In the days of System 6, multitasking was new and virtual memory was not available until System 7. However both pre-emptive multitasking and virtual memory were core requirements of Unix.

The Mac II photo shown is by Ed Hurtley, via Wikimedia Commons.