On May 17, 2018, at 15:48, Warner Losh wrote: > On Thu, May 17, 2018 at 4:15 PM, Frank McConnell via cctalk > <cctalk@classiccmp.org> wrote: > HP-UX for them is very interesting from a historical perspective in that the > Unix kernel is a complete rewrite. It is hosted on top of HP’s “SUN OS” > operating system (there is also a single-user BASIC system for the 9020, also > hosted on SUN OS) and written in HP’s MODCAL language. The filesystem is > HP’s Structured Directory Format. The userland is largely made up of ports > from AT&T System III (and later System V) and 4BSD. > > HP-UX did a fairly extensive kernel rewrite, but implemented substantially > the same system call interface. This was apparent in a number of ways (the > binary format was different from other machines in ways I can't quite recall, > not quite COFF). They did ship mostly programs from BSD and SysV, though > through quirks of the legal minefield of the early days of Unix, they did it > under their System III license, at least in the early days... Don't know if > that ever changed to a System V license or not since they didn't have a > System V kernel...
I am thinking HP did at least four flavors of HP-UX. First was HP-UX for the first-generation 9000s that became the Series 500. I think it took System III as a baseline and reimplemented in MODCAL, and later added System V support. Second was HP-UX for the 9836 (later Series 200). That is a 68010 system and I think was a System III port. Third was HP-UX for Series 300. These are 680x0 systems for x>=2 and I think their HP-UX was a System III port later upgraded to System V. Fourth was HP-UX for Series 800. These are PA-RISC minis and I think their HP-UX was a 4BSD port with System V features for compatibility with series 300. I’m not sure where the Integral fit in. That was a single-user 68000, probably closest to series 200, with no MMU. > So when it is running HP-UX it looks like Unix, with some exceptions. One is > that if you open and read a directory from your C program there are no > entries for . (current) or .. (parent) directories; these are done in SDF’s > directory entry and not present in the actual Unix directory. Yes, ls -a > shows them: it is faking them to make it look more like Unix! > > I think they must have fixed this, or it wasn't true for readdir(). I ported > the OI toolkit to HP-UX once upon a time and the file dialog boxes just > worked, and we had . and .. in there… Were you really working with a Series 500? I don’t think anyone ever ported X libraries to them. No usable TCP/IP stack on them unless you bought the Wollongong product. (I am thinking HP had one for it too, for their NS/9000 products, but it was IEEE 802.3 framing with 802.2 LLC header and not interoperable with Ethernet II.) Series 300/400 (Motorola 680x0 for x >= 2) ran an HP-UX that I think is a System V derived kernel, or at least the later releases were, with a 4BSD TCP stack. Series 800/700 ran an HP-UX that I think was a new port from 4BSD, but with System V features added for compatibility with the Series 300. > -Frank McConnell (supported Wollongong’s TCP/IP on these) > > Danger! The Sea Monster Comes! Yup, my real thing there was supporting Wollongong’s WIN/TCP for MPE/V, which wasn’t really Wollongong’s TCP/IP but was instead Telnet, FTP, and SMTP clients and services on top of HP’s NetIPC TCP API. Telnet and FTP were mostly 4BSD ports to CCS C/3000 and NetIPC and MPE. (And in this message, y’all are getting all the wonder of Apple Mail promoting characters to Unicode and the horrible Gmail quoting with spaces. I hope it’s understandable.) -Frank McConnell