UNIX, circa 1984

I recently ran across Xhomer, a simulator for the DEC Pro 350. While there are several historic machine simulators out there, Xhomer is polished: it compiled and ran on my Opteron laptop running Solaris 10 with no difficulties. But best of all, Xhomer includes system software: you can download a disk image of VENIX 2.0 – a “real-time” UNIX variant from VenturCom. Here’s a screenshot of me logging in.

While I had heard of VENIX (a System III derivative), I had never used it before today. (And nor, presumably, have the good folks at pharmanex.) In using it, it’s clear that VENIX had some BSD influence: VENIX 2.0 includes both csh (blech) and vi (phew). Using a twenty year old UNIX is a strange experience: I’m amazed at how little the most basic things have changed. There was very little that I didn’t recognize (“em1” anyone?), and I was familiar with all of the tools necessary to write a program (vi), compile it (cc) and debug it (adb). Using the latter of these was the most amusing; here’s a screenshot of me using adb.

Compare this output with the output of “$a” on adb, and you’ll see why this got me excited. (And then try “$a” on mdb for our warped idea of an easter egg.) It should go without saying that I looked (so far in vain) for an Algol 68 compiler on this system. Seeing adb spit out a true Algol stack backtrace would be like sipping from the debugging fountain of youth…

While it’s amazing how familiar VENIX feels, I’m also stunned by how anemic its facilites are: it has no TCP/IP stack, no real filesystem, no multiple processor support, no resource management, no dynamic linking, no real virtual memory system, no observability and poor debuggability. It reminds me how far we have come – even before we embarked on the far more radical technologies found in Solaris 10

Now, does anyone know of a Language H compiler for the PDP-11?

OBEY