History of HP UX Operating System


The first version of HP-UX was 1.0, built about 1983. It started out based on System III Unix, and later on System V.

The first HP-UX, for the FOCUS systems (Series 500s), had a kernel written in MODCAL, a modified Pascal with extensions for low-level programming. Pascal/MODCAL was in vogue at HP for operating system work in the early-to-mid 1980s. This kernel in turn was hosted on top of another lower-level kernel called SUNOS (no relation to Sun Microsystems' SunOS) and emulated a file system similar to UFS on top of an HP-peculiar filesystem called Structured Directory Format (which led to curious features like . and .. not actually existing in a directory as opened and read). The userland was a mix of AT&T, UCB, and HP sources.

The series 200/300 history also started out claiming System III and later System V. The HP-UX ROMs for the HP Integral PC had two versions: 1.0 which was System III based and 5.0 which was System V based.
HP announced its Precision Architecture in the second half of 1986, for two hardware lines: the HP3000 series 930 which had an equivalent HP9000 series 840, and the HP3000 series 950 which also had an HP9000 series 8xx equivalent. Unlike later PA-RISC systems, in the 3000/930 and 9000/840, the PA-RISC processor was spread across several boards of TTL.

At the time, HP did not have shippable quantities of hardware, but did have some installed at third-party developers sites. It was another year before MPE/XL was ready for its 1.0 release to customers, and in that time the HP9000 series 840 had shipped with HP-UX and the HP3000 series 930 had been dropped from the price list, not being enough faster than a classic HP3000 series 70 running a similar workload.
When it came time to do a Unix for the first PA-RISC systems (Series 800), at least the kernel was based on 4BSD but then worked over to make it behave more like System V and other HP-UXs. BSD-isms gradually got put back into it over the late 1980s and 1990s. That is, HP started a fresh port of Unix and then layered the old code and APIs on top.

The last release for the series 500 was 5.2.
Series 200 and Series 800 HP-UXs started with versions 1.0 and later got version number bumps up to other ports' version numbers as they became more compatible with those ports. So s200 went from 2.x to 5.0 when it got demand paging and more compatible with s500 5.0, and PA-RISC went from 3.1 to 7.0 when its userland was being built from common sources used in 7.0 on the s300.
By HP-UX 7 even the series 300 port was feeling somewhat BSDish, including the BSD Fast File System and a filesystem with long filenames.