1. 12

  2. 3

    Since there’s been an apparent mass die-off in families of operating systems, I’m a bit curious–what does/did VMS have to offer over ‘nix or NT?

    1. 5

      To start with, Windows NT was OpenVMS rewritten as a desktop & server by OpenVMS team they poached with DEC actually funding its R&D via the Prism project:


      That link has was one of best laughs I got studying IT history in terms of DEC’s response. Unbelievable. Due to development pace & management, Windows NT’s reliability & security was almost totally ignored. Difference in the two in those attributes is why I’d never have guessed they had same, good architecture internally with some changes for NT. The quality got fixed by a veteran of high-assurance security… Steve Lipner also from DEC… via implementation of SDL, shift to managed code, formal verification of drivers, & other tricks. Uptime surveys were showing it was doing better than Linux by around Windows 2003. I’d say Windows 7 was peak of desktop architecture. So, we don’t have to imagine what a modern version of it might look like as a server or desktop. It’s cousin is dominating in one while kicking more ass every year in the other. Also has embedded version.

      Note: This is coming from a guy who doesn’t use Microsoft products. I give them credit where it’s due. The 180 Lipner pulled was pretty amazing. Usability was always ahead, too.

      Far as VMS itself, it had benefits mjturner already listed. DEC was a company created and run by engineers to build innovative, high-quality systems engineers would appreciate. Kind of the OpenBSD philosophy before it existed. ;) That resulted in VAX and PDP (source of UNIX) hardware as alternative to mainframes. The OS, OpenVMS, had solid, monolithic architecture back when UNIX was just getting started. The quality of code was excellent since they alternated 1 week building, a weekend of automated tests, and 1 week fixing. Plus used it themselves (dogfooding). The system had nearly bulletproof clustering in the 80’s where you describe the stuff on two machines, plug a disk in one, and other saw it instantly. Longest-running cluster was a railway claiming 17 years uninterrupted at app level with individual machines running so long companies occasionally lost them or admins forgot how to reboot them. Imagine that being your problem as an admin lol. Plus, it had a shitload of availability technologies, virtualization, early apps in productivity (eg email), and scaling (64-bit w/ SMP/NUMA) to support that:


      A few highlights worth mentioning. First, the filesytem. Early UNIX systems were losing files left and right. My shit still breaks today due to damned package managers. The OpenVMS filesystem was like a database where it treated changes more like transactions than straight file writes. The files were versioned with old ones still there so long as space permitted. Upon screwups, you could roll whole system back at individual file level or maybe a point in time. Distributed lock manager got copied by modern companies/products like Microsoft and Oracle since it’s just works. Security benefit came from it shipping with few services enabled by default (sound familiar?) with many permissions. Highest-security VMM ever done was by Karger & Lipner on VMS but canceled for marketing reasons. SEVMS made it like Argus Pitbull or Trusted Solaris. That combined with code quality led it to be retired from DEFCON after nobody could break it. It definitely has flaws & could be tore up but DEC put in above-average effort. Finally, VMS standardized data types and calling conventions in such a way that it supported cross-language programming of apps with easy integration of stuff in multiple languages. Microsoft later copied & extended that in CLR.

      So, there it is. One, badass system from back in the day that continued to make others look weak for decades despite minimal investment. Notable users I’ve seen in articles included stock exchanges, huge banks, Intel’s systems controlling fabrication, Amazon’s initial system controlling logistics, military installations, and colleges that don’t like debugging systems. Always amazed me how much hate UNIX users gave it given UNIX came nowhere close to its reliability or security track-record in all the contexts its used. They should’ve just cloned it instead with improvements using modern knowledge plus lack of legacy garbage. Microsoft did with an IBM and Intel partnership. Rest is history. :)

      1. 3

        Windows 7 was peak of desktop architecture

        Often said by people who never looked at 8.1. 10 has even more interesting improvements in security, but stability took a nosedive when they fired everyone in QA.

        1. 1

          I know about the improvements but they’re also telling people to go screw themselves in terms of UI choices, firmware DRM, and surveillance features they’re building in. My Win7 boxes didnt have these problems. I see new platforms as a step back from level of user satisfaction anx cost-benefit Win7 provided.

          I figure Ill have to buy Windows Embedded so I can strip as much bullshig out of it as possible. Then still isolate it with a separation kernel with critical stuff outside Windows VM. Or just buy a Mac.

          1. 2

            ReactOS? :D

            1. 1

              It was a neat idea. Assume it gets traction for Windows app compatibility. Microsoft sues them for API and patent infringement. Probably CodeWeavers too. It’s always possible. It’s why it’s best to change just enough to maybe win in court if compatibility isnt an issue.

      2. 4

        I’d imagine that there aren’t many customers who will be migrating to VMS from other platforms today, but back in the 80s it offered a real alternative to Unix. Clustering that worked, a rock solid OS that never crashed, excellent hardware and DEC’s solid reputation were all pluses. Along with a far better security model than Unix, an advanced file system and a full set of compilers and tools for scientific computing, etc.

        BTW, for those interested in VMS, there is a Hobbyist program that gives access to the latest versions of the OS (for VAX, Alpha and Itanium) along with assorted layered products. Licenses are only for a year but can be renewed. Highly recommended if you have the hardware (Itaniums are pretty cheap on eBay these days, VAXen and Alphas not so much) or you can use an emulator (SimH will run VMS for VAX, although the latest release for that platform is 7.3 - for Alpha and Itanium it’s 8.4).

        1. 2

          Actually I’ve heard differently. Specifically, the Notesfiles forums on the erstwhile Deathrow VMS cluster: https://deathrow.vistech.net/ back when it was in operation cited HP making a healthy profit selling new OpenVMS licenses to customers.

          1. 3

            Interesting. I wonder if those are customers migrating to VMS or migrating to VMS on a new platform. I’d guess there were a healthy base of users who were on Alpha (and perhaps even VAX) hardware who have migrated to Itanium over the last few years.

            Interestingly enough, there are binary translation tools that convert Alpha binaries to Itanium ones (see, eg, 1 and 2). There are some fascinating tidbits in the second document, for example:

            Unheralded and virtually unnoticed, the Alpha version of MONITOR has been translated from successive VAX images since the advent of the Alpha in 1992 through 2005. Similarly, the TECO text editor has made use of emulation and translation since the advent of the VAX in 1977.

            1. 1

              Yeah, they use dynamic recompilation for future proofing. Better approach was System/38, AS/400 predecessor, that used special microcode/firmware like the bytecode of a JVM or CLR. All OS and app code targeted it. Then, it was compiled to HW. They ported underlying hardware multiple times with software still compatible. One of its many forward-thinking features.

              EDIT: Transmeta did dynamic recompilation for x86 at CPU level like a JIT to run on power-efficient, RISC core. Intel acquired them IIRC.

          2. 1

            If that’s the program that requires you to be a member of a user group, note that the Munich user group allows you to join remotely for free.

            1. 1

              Yes, that’s the one. It’s also possible to join Connect/Encompass free and remotely too.

            2. 1

              From what I hear, security. Apparently there are a number of .gov shops which run a bunch of OpenVMS because, among other reasons, its architecture makes it much easier to harden than the average *NIX.

              Note this is all second hand, not an expert, etc etc.

              1. 3

                A lot of them despite the die off and porting efforts per ReadyContacts. Not sure how accurate their data is but it could be given revenue HP was making on it:


                Here’s a bunch of statements from admins that are pretty typical of what its customers say:


            3. 1

              It had an integrated versioning filesystem which was really cool - I use hourly/daily ZFS snapshots now but that’s a poor substitute for having a history of every save of every file.

              I’ve heard things about its isolation capabilities but never really used them myself (my alpha was too noisy to use as a home server).

              IIRC NT’s “kernel personalities” feature was originally from VMS (I understand NT was mostly written by the VMS team).

              1. 1

                I’m guessing you used it on the Alpha. One thing I wasn’t clear on was whether you could roll back filesystem to a specific point in time using the versioning or if you had to track/manage individual files?

                1. [Comment removed by author]

                  1. 2

                    Yes, that’s my experience of it as well. Files are automatically versioned, with (IIRC), the highest automatically used if a version number isn’t specified.

                    Interestingly, it came from RSX-11 to VMS, so the concept is fairly old. Odd that it wasn’t picked up by any other mainstream filesystem?

            4. 1

              We should start a GoFundMe or Kickstarter or whatever and buy the rights to open source VMS from VMS Software. They would still make ongoing money with support or a proprietary fork or whatever.

              1. 2

                I thought about doing it. The problem is what’s often the problem due to economics with these things. The greatest tech, in this case OpenVMS, usually gets acquired by a greedy, large company that really doesn’t want it to succeed. HP had two competing products in OpenVMS and NonStop. They killed OpenVMS. The deal from VMS Software, if I read correctly, isn’t that they bought it or anything. HP wouldn’t allow it as VMS is a cash cow in terms of licensing revenue from locked-in customers. Instead, they allowed VMS Software to develop, manage, and license it… not own it… with HP taking some cut while it sits on its ass. The exact kind of deal you’d expect from a company like HP.

                Just sucks that NonStop and OpenVMS got acquired by the same, greedy company. AS/400 is IBM. That’s all the major ones for best reliability at architectural level. Last one is Stratus that does five 9’s systems. It’s owned by a regular, investment firm. One might buy and dual-license it. They keep making money off hardware and support from enterprise firms with OSS people using the OS & availability tech with cheap servers. I still want to try to spin VMS or Stratus into some bare-metal hosting setup with common environments pre-rolled. They get and pay for benefits without knowing anything about VMS. HP should’ve done that a long time ago but were too greedy or short-sighted.

                1. 1

                  It’s a fine idea, but I’m unsure that most *NIX open source developers would be able to actually contribute meaningfully.

                  I found getting started developing in VMS to be a challenge. EVERYTHING is radically different, tooling, interfaces, APIs, you name it.

                  1. 1

                    Yeah, they need to make a UNIX API for it so that’s easier. The porting companies made plenty of VMS API’s for UNIX/Linux to ease transitions. So, I’m sure it can be done.