OpenVMS (Open Virtual Memory System or just VMS) is the name of a high-end computer server operating system that runs on the VAX and Alpha family of computers developed by Digital Equipment Corporation of Maynard, Massachusetts (now owned by Hewlett-Packard), and more recently on Hewlett-Packard systems built around Intel Itanium CPU.
OpenVMS is a multi-user, multiprocessing virtual memory-based operating system (OS) designed for use in time sharing, batch processing, real time (process priorities can be set higher than OS kernel jobs) and transaction processing. It offers high system availability through clustering, or the ability to distribute the system over multiple physical machines. This allows the system to be "disaster-tolerant" against natural disasters that may disable individual data-processing facilities.
OpenVMS commercialized many features that are now considered standard requirements for any high-end server operating system. These include:
Over the years the name of the product has changed. In 1980 it was renamed, with version 2.0 release, to VAX/VMS (at the same time as the VAX-11 computer was renamed to simply VAX). With the introduction of the MicroVAX range such as the MicroVAX II and MicroVAX 2000 in the mid-to-late 1980s, DIGITAL released MicroVMS versions specifically targeted for these platforms which had much more limited memory and disk capacity e.g. the smallest MicroVAX 2000 had a 40MB RD32 hard disk and only 4MB of RAM, and its CPU had to emulate some of the VAX floating point instructions in software. MicroVMS kits were released for VAX/VMS 4.0 to 4.7 on TK50 tapes and RX50 floppy disks, but discontinued with VAX/VMS 5.0. In 1991 it was renamed again to OpenVMS to indicate its support for industry standards such as POSIX and Unix compatibility, and to drop the hardware connection as the port to DIGITAL's 64-bit Alpha RISC processor was in process. The OpenVMS name first appeared after the version 5.5-2 release.
In 1994, with the release of OpenVMS version 6.1, feature (and version number) parity between the VAX and Alpha variants was achieved. Subsequent version numberings for the VAX and Alpha variants of the product have remained consistent.
Unlike the port from VAX to Alpha, in which a "snapshot" of the VAX code base circa V5.4 was used as the basis for the Alpha release and the source code then largely diverged, the OpenVMS Alpha and I64 (Itanium) versions of OpenVMS are built and maintained using a common source code pool and tools.
OpenVMS I64 V8.0, the first pre-production quality release, was shipped in June 2003.
OpenVMS V8.2, the first production quality Itanium release, was shipped in January 2005. V8.2 is also available for OpenVMS Alpha.
OpenVMS I64 V8.2-1, adding support for Integrity Superdome and cell based systems, was released in September 2005. V8.2-1 is available for Itanium platforms only.
Mixtures of cluster interconnects and technologies are permitted, including Gigabit (GbE) Ethernet, SCSI, DSSI, CI and Memory Channel adapters.
OpenVMS supports up to 96 nodes in a single cluster, and allows mixed-architecture clusters, where VAX and Alpha systems, or Alpha and Itanium systems can co-exist in a single cluster (Various organizations have demonstrated triple-architecture clusters and cluster configurations with up to 150 nodes, but these configurations are not supported by HP).
Unlike many other clustering solutions, VAXcluster offers fully-distributed read-write with record-level locking, which means that the same disk and even the same file can be accessed by several cluster nodes at once; the locking occurs only at the level of a single record of a file, which would usually be one line of text or a single record in a database. This allows the construction of high-availability multiply-redundant database servers.
Cluster interconnections can span upwards of 500 miles, allowing member nodes to be located in different buildings on an office campus, or in different cities.
Host-based volume shadowing allows volumes (of the same or of different sizes) to be shadowed (mirrored) across multiple controllers and multiple hosts, allowing the construction of disaster-tolerant environments.
Full access into the distributed lock manager (DLM) is available to application programmers, and this allows applications to coordinate arbitrary resources and activities across all cluster nodes. This obviously includes file-level coordination, but the resources and activities and operations that can be coordinated with the DLM are completely arbitrary.
With the supported capability of rolling upgrades and with multiple system disks, cluster configurations can be maintained on-line and upgraded incrementally. This allows cluster configurations to continue to provide application and data access while a subset of the member nodes are upgraded to newer software versions.
While the system is shut down, time is kept by a Time-of-Year ("TOY") clock. This clock keeps time to a lower resolution (perhaps 1 second) and generally, a lower accuracy (often 0.025% versus 0.01%). When the system is restarted, the ordinary VMS 64-bit time value is recomputed based on the time kept by the TOY clock and the last recorded year (stored on the system disk).
The 100 nanosecond granularity implemented within OpenVMS and the 63-bit absolute time representation (the sign bit must be clear) mean that OpenVMS should have no trouble with time until 31-JUL-31086 02:48:05.47. At this time, all clocks and time-keeping operations in OpenVMS will suddenly stop, as system time values go negative.
Before writing a simple program in a High-Level language, however, the user should consider whether the required operation can be completed using DCL's functions from a command file.
As of 2005, the time required to obtain a hobbyist license was approximately one week from start to finish.
More information on the hobbyist program can be found at http://www.openvmshobbyist.org/
Computing platforms | OpenVMS | DEC Operating Systems | Hewlett-Packard
Virtual Memory System | OpenVMS | Virtual Memory System | OpenVMS | VMS | OpenVMS | VMS (besturingssysteem) | OpenVMS | VMS | OpenVMS | VMS