VMS stability back in the day (was Re: NuTek Mac comes)

Ethan Dicks ethan.dicks at gmail.com
Fri Jul 15 00:37:11 CDT 2016


On Thu, Jul 14, 2016 at 4:50 PM, Swift Griggs <swiftgriggs at gmail.com> wrote:
> Big Fat Disclaimer: I know very little about VMS. I'm a UNIX zealot.
>
> I work with a lot of VMS experts and being around them has taught me a lot
> more about it than I ever thought to learn....
> ... I don't see any point in "UNIX vs VMS" which I gather was a big
> bruhaha back in the 1990s.

It was a huge deal in the late 80s and into the 90s.  I was on both
sides, so mostly, I watched.

I got my start with VMS a few months before I touched UNIX - same
hardware - VAX-11/750.  I've written device drivers, system utilities,
and application code for both.  VMS was very good to me from
1984-1994, and I did a bit more with it from 1997-2003, then nothing
commercially since then.  UNIX (and by extension Linux) has been good
to me the entire time since 1985.  If I have choice, I'll grab
something UNIXy to do my work on - I'm not particular as to flavor.

> HOWEVER...
>
> Personally, given the mess of MultiNet, TCP/IP Services, and TCPWare, I
> wouldn't make that statement about networking *at all*. However, maybe you
> are talking about DECnet. I don't know much about DECnet except that it's
> very proprietary and it's got a bunch of "phases" (versions) that are
> radically different. Some are super-simple and not even routable, and
> others are almost as nasty as an OSI protocol stack.

I think TCP networking on VMS is a bit of a bodge, but back when I
used it every day in the 1980s, we didn't _have_ any Ethernet
interfaces in the entire company - *everything* we did was via sync
and async serial.  How well do you think it would go if all you had
was SLIP and PPP?  We did a lot.  Yes, other people had high-speed
networking and VAX clusters, etc.  We did not.  Not even our VAXen
running UNIX.  All serial, all day.  We still got a lot done.

>> But having used VMS (as a student), the command line *sucked* (except
>> for the help facility---that blows the Unix man command out of the
>> water).

I found certain aspects of DCL to be quirky, even if I did learn it
before I touched a UNIX shell.  That said, it was easier (to me) to
write full-on apps and utilities in DCL than sh or csh.  It would be a
fairer comparison to develop a complex app in Perl vs DCL (Perl would
win, but it has a lot going for it).  I even completely automated our
build process (formerly a full-time engineer's job, but as the company
shrank, we couldn't afford to have someone who was, essentially just a
build master)... source code control, pulling code based on which
product it was for, compiling it (without "make"), linking it locally,
sending the objects over to a machine running another version of VMS,
linking it there, pulling all the text objects and executables into
two tape-build repositories and cutting magtape for distribution - all
in DCL.  I literally turned a fulltime job into a script.  All you had
to type was "$ RELEASE <protocol> <hardware bus>" and it would pull
everything, auto-increment the version number, inject it into the
code, build everything and tell you it was time to make tapes (8 hours
later!)

I'm sure it's possible to do all of that in csh, but even now, I
wouldn't want to be the one to build that.

> The DCL command line is very foreign to me. I've seen people rave about
> how regular and predictable things are in DCL, and I've seen some evidence
> of that. I've also seen some spot-on criticisms of DCL scripting vis-a-vis
> shell scripting and that's also accurate.

The regularity and predictability of args and options is definitely a
strength in DCL.  Args are entire words, not letters which change from
app to app.  Here's a trivia question: which letters are _not_ valid
arguments to 'ls'?  I know one off the top of my head but not the
others.  Next thing - how about those args to 'dd'?  Crazy.  Now how
about 'tar'... etc., etc.  I use this stuff every day, but I have
internalized a massive amount of UNIX trivia to be able to do so.  VMS
requires far less random factoid knowledge to get stuff done on the
command line.  There's a system command line parser, and it helps with
the consistency.

VMS HELP is also awesome.  I use man pages - they are good if you
already know how things work and are just trying to remember is it
'-p' here, or '-a' or what?

> Strengths versus Unix:
>  * More granular authentication/authorization system built in from very
>    early days I'm told. "capabilities" style access control, too.

Much stronger.  There are dozens of privileges you can grant so
someone can do their job and not overstep things.  UNIX says, "all or
nothing.  Don't screw up."

[ other strengths deleted for brevity ]

> Downsides versus Unix:
>
>  * There is a lot of software ported to VMS, but a lot still missing too.
>    Open source projects often lag by years. It's all volunteers

There was DECUS back in the day - a very strong source of sharable
software going back well over a decade before there was any VMS.
Consequently, there was less freeware available via Usenet.

OTOH, I learned a *lot* porting utilities and games from
comp.sources.unix and comp.sources.games to VMS.  Some things were a
lot harder than others.

>  * No x86 support, you gotta find a VAX, Alpha, or Integrity/IA64 box.

Meh.

>  * DCL is very very weird to a UNIX user and I miss tons of features from
>    UNIX. I say "weird" but when it comes to scripting, I'd go as far as
>    saying "weak". I mean, no "while", no "for", and lots of other things I
>    dearly miss.

There are looping directives, but they are not as C-like as sh/bash/csh/ksh...

>  * No source code for the masses and licenses out the yazoo. It nickel and
>    dimes you for every feature (but so does Tru64 and many others to be
>    fair).

Very true, but back in the day, you had to pay ~$30,000 to get the
UNIX source.  I have the papers to prove it (Software Results had a
System III and System V source license, which I ended up with when the
company folded).  You could also pay DEC for VMS source.  No idea how
much that was (not cheap).  For some perspective, you were running
these OSes on machines that cost $300,000 in 1977 (11/780), $120,000
in 1980 (11/750), $40,000 in 1982 (11/730), $10,000 in 1985
(MicroVAX)...  (newer, smaller and slower, at least the models we
could afford).

> If you are a VMS bigot and you take offense at any of this, please go easy
> on me. I'm just giving my impressions, not stating any of this as absolute
> truth or law. I'm certainly not trying to bust on VMS. I think VMS is
> neat.

No offense taken, but I'm just sharing my own experiences as someone
who used both, heavily, every day for most of 1984-1994 on 80s
hardware, and still use UNIX and UNIX-y things all day every day.  In
the end, it did thrive where VMS was something of a dead-end.  Fun
ride while it lasted, though.

-ethan

(Some prices from memory, some checked against resources like
http://www.jcmit.com/cpu-performance.htm )
~


More information about the cctech mailing list