VMS architects

From: Marc Hustvedt <mhustved_at_umich.edu>
Date: Tue Nov 2 14:26:36 1999

OZIX was the operating system for PRISM, one of several 32-bit RISC
architectures that DEC was developing at one point. When it was canned,
Dave Cutler once again threatened to walk, and DEC took him up on it.
Anyway, later, DEC was anxious to get Windows/NT for Alpha, and so signed
an agreement before they saw the code that everything in there belonged to
Microsoft and that they had no claim to it. Afterwards, some people still
at DEC pointed out that their initials were still there in the edit history
and that they'd been had. Cutler was quoted in some article as saying that
DEC could have had it but now they'll have to pay to get it. Bill Gates
was reportedly pretty upset when he saw that article.

(There are also stories about Windows/NT device drivers; if you want
drivers for hardware you're selling to be included on the NT distribution,
you have to sign over *all* rights to the driver code to Microsoft. I
don't know if any hardware manufacturers consider their drivers to contain
code which gives them a competitive advantage over other hardware
manufacturers; if there are, they have a tough choice.)

But IMHO, without Microsoft behind it, the operating system would not have
gotten too far beyond the VMS market anyway. And it gave DEC leverage to
get Microsoft to support Alpha and outsource some support work to DEC.

The system services (the layer under the Windows API) are a whole lot like
VMS. That makes the WNT ones a lot easier to use for those who used the
VMS ones.

When the C++ standards committee started up, Windows/NT wasn't announced
yet. Microsoft's rep was insistent that exceptions be resumable, as they
are in VMS. I had fun (seriously, for some reason I enjoyed it) taking the
position that VMS did it that way but C++ shouldn't. (I had tried to use
VMS exceptions in a VLSI CAD application and it was a major pain. I tried
prototyping the same thing in C++ and it looked like a pain on paper. And
it turned out that they only important places they were used in VMS were
printing messages with context information [and a subroutine could walk up
the stack to do that] and returning to the debugger [and a subroutine could
do that, although there might be some protection ring stuff to finagle
too]. Plus, POSIX Threads - descended from DECthreads - had chosen the
non-resumable model, and so my orders were to try to get C++ to follow
suit. The interested can see Bjarne Stroustrup's "acorn book" for an
account of the others who opposed resumable exceptions on the grounds of
more extensive usage in real projects (incl. TI, Xerox).

Cutler wasn't the only key person behind VMS; the other was Dick Hustvedt,
who was evenrtually injured in a traffic accident pulling out from DEC's
driveway onto Spit Brook Road and ended up on permanent disability with
short-term memory loss. A friend in the VMS group said that Hustvedt, not
Cutler, was responsible for much more of the tricky, nifty stuff in VMS.
But the survivors get to write the history. "There Ain't No Such Thing As
Justice." -- Larry Niven


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.classiccmp.org/pipermail/cctalk/attachments/19991102/fc6144d9/attachment.html
Received on Tue Nov 02 1999 - 14:26:36 GMT

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:32:28 BST