kernelthread.com

© Amit Singh. All Rights Reserved. Written in February 2004


Many Systems for Many Apples

Apple spent the next few years improving the Macintosh operating system, and creating some other noteworthy systems.

System Software Releases 2 - 6

For a long time, there were multiple, independent versioning schemes in effect for system components: a System Software Release, a System Version, a Finder Version, a MultiFinder Version, a LaserWriter Version, etc. Eventually there were attempts to unify these versions.

Some improvements made during this time included:

System 6
System 6

An important improvement came when Apple incorporated cooperative multitasking via the MultiFinder. Initially included as a separate piece of software (along with the original Finder), MultiFinder soon became non-optional. It allowed the user to have several programs open simultaneously, as well as assign RAM to these programs. Apple also made usability improvements like providing a progress bar with cancel button for "copy file" and "erase disk" operations. So far, the Finder did not use color even on color capable systems. This was "fixed" with the introduction of Color QuickDraw.

What color is your system?

After the Macintosh had been around for four years, some Apple engineers and managers met at an off-site in March 1988. As they brainstormed to come up with future operating system strategies, they noted down their ideas on three sets of index cards: blue, pink, and red:

At this point, the System Software was at version 6.x. The 1980's were drawing to an end. System 7, a result of the Blue project, would be Apple's most significant system, both relatively and absolutely. However, that would not be until 1991. Apple would come out with two interesting operating systems before that: GS/OS and A/UX.

GS/OS

As stated earlier, the Apple II had a rather long life span. After the release of the Macintosh in 1984, the Apple II was still around. The Apple IIGS was introduced in 1986, almost as a bridge between the old and the new. It was the first and only 16-bit Apple II, and had impressive multimedia abilities (the "GS" stands for graphics and sound). It had a 6502-compatible processor, two super high resolution graphics modes (200 x 320, 16-color palette, or 200 x 640, 4-color palette), a 32-voice Ensoniq Digital Oscillator chip that could be driven by firmware to produce up to 15 musical instruments, and many other additions and improvements over previous Apple II machines.

GS/OS
GS/OS

Apple ProDOS was forked into 8- and 16-bit versions to accommodate the Apple IIGS.

After using ProDOS 16 as the computer's operating system for a short time, Apple replaced it with GS/OS, a new 16-bit, native-mode system that significantly improved performance (boot time, disk access time, program launch time) and added several modern features. GS/OS had the concept of file system translators (FST's), a generic file interface that allowed many different file systems to be read from and written to. The concept was along similar lines as AT&T's file system switch, Sun Microsystems'vnode/vfs, and DEC's gnode, that were being introduced in the mid-1980's to allow multiple file systems to co-exist. GS/OS eventually went on to have FST's for various file systems: Apple Pascal, Apple DOS 3.3, ISO/High Sierra, Macintosh HFS disks, MS-DOS, ProDOS, and AppleShare (that allowed GS/OS to access an AppleShare file server over AppleTalk).

The Finder could browse over the network, and GS/OS could even be network-booted.

The graphical control panel in GS/OS was a facility for controlling numerous system settings. Control panel "devices" (CDEV's) could be added by third-party developers.

The last version of GS/OS (4.02) shipped with Apple IIGS System 6.0.1.

A/UX

Apple came out with their own version of POSIX compliant Unix, A/UX, in late 1988. The earliest A/UX was based on 4.2BSD and AT&T UNIX System V Release 2, but it would go on to derive from 4.3BSD and various subsequent System V releases.

A/UX included features such as job control, signals, networking (AppleTalk, STREAMS, TCP/IP, sockets, NFS with YP, etc.), Berkeley File System (ffs), SCCS, printing, the X Window System, compatibility with the BSD and System V API's (in addition to POSIX), compilers such as 'cc' and 'f77', and so on.

A/UX
A/UX

More interestingly, A/UX combined various features of the Macintosh operating system with Unix. A/UX 2.x used System 6, while A/UX 3.x was a combination of the above mentioned Unix environment with System 7. The A/UX file system appeared as a disk drive icon in the System 7 Finder. It was possible to run a Macintosh application, Unix applications (command line and X Window), and even DOS applications (if you had SoftPC installed) side-by-side. You could also create "hybrid" applications that made use of the Unix system call interface as well as the Macintosh Toolbox. Note that while the Unix processes ran with preemptive multitasking, the Macintosh MultiFinder still did cooperative multitasking. The startmac (or startmac24, depending on whether 32-bit or 24-bit addressing was in effect) application was responsible for creating a Macintosh environment under A/UX. Many aspects of this environment were customizable, including what application to run as the Finder.

A/UX was regarded as the holy grail of Unix systems by its proponents. Its installation procedure, provided you had compatible hardware, was probably one of the simplest ever (essentially one-click) for a Unix system.

From trivialities such as similar commands (appleping, for example) to the more elaborate marriage of Unix and the Macintosh environment, vestiges of insights gained through A/UX can be seen in Mac OS X today. A/UX used "/.mac/<host>/Desktop Folder" and "/.mac/<host>/Trash" as the Unix path names for directories containing items visible on the Macintosh Desktop and in the trash can, respectively. Moreover, Unix uses the '/' character to separate path components, while Macintosh file systems use ':'. Invisible translation was done while accessing or moving files from one environment to the other. Home directories for user accounts lived in /users, and so on.

The last version of A/UX, 3.1.1, was released in 1995. A/UX only ran on 68k Apple machines with a floating point unit (FPU) and a paged memory management unit (PMMU).

<<< The Graphical Age main Seeking Power >>>