Software:OpenVMS

From HandWiki
Short description: Computer operating system
OpenVMS
Vsi-openvms-logo.svg
DECwindows-openvms-v7.3-1.png
OpenVMS V7.3-1 running the CDE-based DECwindows "New Desktop" GUI
DeveloperVMS Software Inc (VSI)[1] (previously Digital Equipment Corporation, Compaq, Hewlett-Packard)
Written inPrimarily C, BLISS, VAX MACRO, DCL.[2] Other languages also used.[3]
Working stateCurrent
Source modelClosed-source with open-source components. Formerly source available[4][5]
Initial releaseAnnounced: October 25, 1977; 46 years ago (1977-10-25)
V1.0 / August 1978; 45 years ago (1978-08)
|Final release|Latest release}}V9.2-2 / January 25, 2024; 5 months ago (2024-01-25)[6]
Marketing targetServers (historically Minicomputers, Workstations)
Available inEnglish, Japanese.[7] Historical support for Chinese (both Traditional and Simplified characters), Korean, Thai.[8]
Update methodConcurrent upgrades,
rolling upgrades
Package managerPCSI and VMSINSTAL
PlatformsVAX, Alpha, Itanium, x86-64
Kernel typeMonolithic kernel with loadable modules
InfluencedVAXELN, MICA, Windows NT
Influenced byRSX-11M
Default user interfaceDCL CLI and DECwindows GUI
LicenseProprietary
Official websitevmssoftware.com

OpenVMS, often referred to as just VMS,[9] is a multi-user, multiprocessing and virtual memory-based operating system. It is designed to support time-sharing, batch processing, transaction processing and workstation applications.[10] Customers using OpenVMS include banks and financial services, hospitals and healthcare, telecommunications operators, network information services, and industrial manufacturers.[11][12] During the 1990s and 2000s, there were approximately half a million VMS systems in operation worldwide.[13][14][15]

It was first announced by Digital Equipment Corporation (DEC) as VAX/VMS (Virtual Address eXtension/Virtual Memory System[16]) alongside the VAX-11/780 minicomputer in 1977.[17][18][19] OpenVMS has subsequently been ported to run on DEC Alpha systems, the Itanium-based HPE Integrity Servers,[20] and select x86-64 hardware and hypervisors.[21] Since 2014, OpenVMS is developed and supported by VMS Software Inc. (VSI).[22][23] OpenVMS offers high availability through clustering—the ability to distribute the system over multiple physical machines.[24] This allows clustered applications and data to remain continuously available while operating system software and hardware maintenance and upgrades are performed,[25] or if part of the cluster is destroyed.[26] VMS cluster uptimes of 17 years have been reported.[27]

History

Origin and name changes

Stylized "VAX/VMS" used by Digital

In April 1975, Digital Equipment Corporation embarked on a project to design a 32-bit extension to its PDP-11 computer line. The hardware component was code named Star; the operating system was code named Starlet. Roger Gourd was the project lead for VMS. Software engineers Dave Cutler, Dick Hustvedt, and Peter Lipman acted as technical project leaders.[28] The Star and Starlet projects culminated in the VAX-11/780 computer and the VAX/VMS operating system. The Starlet project's code name survives in VMS in the name of several of the system libraries, including STARLET.OLB and STARLET.MLB.[29] VMS was mostly written in VAX MACRO with some components written in BLISS.[9]

One of the original goals for VMS was backwards compatibility with DEC's existing RSX-11M operating system.[9] Prior to the V3.0 release, VAX/VMS included a compatibility layer named the RSX Application Migration Executive (RSX AME) which allowed user mode RSX-11M software to be run unmodified on top of VMS.[30] The RSX AME played an important role on early versions of VAX/VMS, which used certain RSX-11M user mode utilities before native VAX versions had been developed.[9] By the V3.0 release, all compatibility mode utilities were replaced with native implementations.[31] In VAX/VMS V4.0, RSX AME was removed from the base system, and replaced with an optional layered product named VAX-11 RSX.[32]

"Albert the Cheshire Cat" mascot for VAX/VMS, used by the DECUS VAX SIG[33][34]

A number of distributions of VAX/VMS were created:

  • MicroVMS was a distribution of VAX/VMS designed for MicroVAX and VAXstation hardware, which had less memory and disk space than larger VAX systems of the time.[35] MicroVMS split up VAX/VMS into multiple kits, which a customer could use to install a subset of VAX/VMS tailored to their specific requirements.[36] MicroVMS releases were produced for each of the V4.x releases of VAX/VMS and was discontinued when VAX/VMS V5.0 was released.[37][38]
  • Desktop-VMS was a short-lived distribution of VAX/VMS sold with VAXstation systems. It consisted of a single CD-ROM containing a bundle of VMS, DECwindows, DECnet, VAXcluster support, and a setup process designed for non-technical users.[39][40] Desktop-VMS could either be run directly from the CD or could be installed onto a hard drive.[41] Desktop-VMS had its own versioning scheme beginning with V1.0, which corresponded to the V5.x releases of VMS.[42]
  • An unofficial derivative of VAX/VMS named MOS VP (Russian: Многофункциональная операционная система с виртуальной памятью, МОС ВП, lit. 'Multifunctional Operating System with Virtual Memory')[43] was created in the Soviet Union during the 1980s for the SM 1700 line of VAX clone hardware.[44][45] MOS VP added support for the Cyrillic script and translated parts of the user interface into Russian.[46] Similar derivatives of MicroVMS known as MicroMOS VP (Russian: МикроМОС ВП) or MOS-32M (Russian: МОС-32М) were also created.

With the V5.0 release in April 1988, DEC began to refer to VAX/VMS as simply VMS in its documentation.[47] In July 1992,[48] DEC renamed VAX/VMS to OpenVMS as an indication of its support of open systems industry standards such as POSIX and Unix compatibility,[49] and to drop the VAX connection since a migration to a different architecture was underway. The OpenVMS name was first used with the OpenVMS AXP V1.0 release in November 1992. DEC began using the OpenVMS VAX name with the V6.0 release in June 1993.[50]

Port to Alpha

"Vernon the Shark" logo for OpenVMS[51]

During the 1980s, DEC planned to replace the VAX platform and the VMS operating system with the PRISM architecture and the MICA operating system.[52] When these projects were cancelled in 1988, a team was set up to design new VAX/VMS systems of comparable performance to RISC-based Unix systems.[53] After a number of failed attempts to design a faster VAX-compatible processor, the group demonstrated the feasibility of porting VMS and its applications to a RISC architecture based on PRISM.[54] This led to the creation of the Alpha architecture.[55] The project to port VMS to Alpha began in 1989, and first booted on a prototype Alpha EV3-based Alpha Demonstration Unit in early 1991.[54][56]

The main challenge in porting VMS to a new architecture was that VMS and the VAX were designed together, meaning that VMS was dependent on certain details of the VAX architecture.[57] Furthermore, a significant amount of the VMS kernel, layered products, and customer-developed applications were implemented in VAX MACRO assembly code.[9] Some of the changes needed to decouple VMS from the VAX architecture included the creation of the MACRO-32 compiler, which treated VAX MACRO as a high-level language, and compiled it to Alpha object code,[58] and the emulation of certain low-level details of the VAX architecture in PALcode, such as interrupt handling and atomic queue instructions.

The VMS port to Alpha resulted in the creation of two separate codebases - one for VAX, and for Alpha.[4] The Alpha code library was based on a snapshot of the VAX/VMS code base circa V5.4-2.[59] 1992 saw the release of the first version of OpenVMS for Alpha AXP systems, designated OpenVMS AXP V1.0. In 1994, with the release of OpenVMS V6.1, feature (and version number) parity between the VAX and Alpha variants was achieved, this was the so-called Functional Equivalence release.[59] The decision to use the 1.x version numbering stream for the pre-production quality releases of OpenVMS AXP caused confusion for some customers, and was not repeated in the subsequent ports of OpenVMS to new platforms.[57]

When VMS was ported to Alpha, it was initially left as a 32-bit only operating system.[58] This was done to ensure backwards compatibility with software written for the 32-bit VAX. 64-bit addressing was first added for Alpha in the V7.0 release.[60] In order to allow 64-bit code to interoperate with older 32-bit code, OpenVMS does not create a distinction between 32-bit and 64-bit executables, but instead allows for both 32-bit and 64-bit pointers to be used within the same code.[61] This is known as mixed pointer support. The 64-bit OpenVMS Alpha releases support a maximum virtual address space size of 8TiB (a 43-bit address space), which is the maximum supported by the Alpha 21064 and Alpha 21164.[62]

One of the more noteworthy Alpha-only features of OpenVMS was OpenVMS Galaxy - which allowed the partitioning of a single SMP server to run multiple instances of OpenVMS. Galaxy supported dynamic resource allocation to running partitions, and the ability to share memory between partitions.[63][64]

Port to Intel Itanium

"Swoosh" logo used by HP for OpenVMS

In 2001, prior to its acquisition by Hewlett-Packard, Compaq announced the port of OpenVMS to the Intel Itanium architecture.[65] The Itanium port was the result of Compaq's decision to discontinue future development of the Alpha architecture in favour of adopting the then-new Itanium architecture.[66] The porting began in late 2001, and the first boot on took place on January 31, 2003.[67] The first boot consisted of booting a minimal system configuration on a HP i2000 workstation, logging in as the SYSTEM user, and running the DIRECTORY command. The Itanium port of OpenVMS supports specific models and configurations of HPE Integrity Servers.[10] The Itanium releases were originally named HP OpenVMS Industry Standard 64 for Integrity Servers, although the names OpenVMS I64 or OpenVMS for Integrity Servers are more commonly used.[68]

The Itanium port was accomplished using source code maintained in common within the OpenVMS Alpha source code library, with the addition of conditional code and additional modules where changes specific to Itanium were required.[57] This required certain architectural dependencies of OpenVMS to be replaced, or emulated in software. Some of the changes included using the Extensible Firmware Interface (EFI) to boot the operating system,[69] reimplementing the functionality previously provided by Alpha PALcode inside the kernel,[70] using new executable file formats (Executable and Linkable Format and DWARF),[71] and adopting IEEE 754 as the default floating point format.[72]

As with the VAX to Alpha port, a binary translator for Alpha to Itanium was made available, allowing user mode OpenVMS Alpha software to be ported to Itanium in situations where it was not possible to recompile the source code. This translator is known as the Alpha Environment Software Translator (AEST), and it also supported translating VAX executables which had already translated with VEST.[73]

Two pre-production releases, OpenVMS I64 V8.0 and V8.1, were available on June 30, 2003, and on December 18, 2003. These releases were intended for HP organizations and third-party vendors involved with porting software packages to OpenVMS I64. The first production release, V8.2, was released in February 2005. V8.2 was also released for Alpha, subsequent V8.x releases of OpenVMS have maintained feature parity between the Alpha and Itanium architectures.[74]

Port to x86-64

When VMS Software Inc. (VSI) announced that they had secured the rights to develop the OpenVMS operating system from HP, they also announced their intention to port OpenVMS to the x86-64 architecture.[75] The porting effort ran concurrently with the establishment of the company, as well as the development of VSI's own Itanium and Alpha releases of OpenVMS V8.4-x.

The x86-64 port is targeted for specific servers from HPE and Dell, as well as certain virtual machine hypervisors.[76] Initial support was targeted for KVM and VirtualBox. Support for VMware was announced in 2020, and Hyper-V has been described as a future target.[77] In 2021, the x86-64 port was demonstrated running on an Intel Atom-based single-board computer.[78]

As with the Alpha and Itanium ports, the x86-64 port made some changes to simplify porting and supporting OpenVMS on the new platform including: replacing the proprietary GEM compiler backend used by the VMS compilers with LLVM,[79] changing the boot process so that OpenVMS is booted from a memory disk,[80] and simulating the four privilege levels of OpenVMS in software since only two of x86-64's privilege levels are usable by OpenVMS.[70]

The first boot was announced on May 14, 2019. This involved booting OpenVMS on VirtualBox, and successfully running the DIRECTORY command.[81] In May 2020, the V9.0 Early Adopter's Kit release was made available to a small number of customers. This consisted of the OpenVMS operating system running in a VirtualBox VM with certain limitations - most significantly, few layered products were available, and code can only be compiled for x86-64 using cross compilers which run on Itanium-based OpenVMS systems.[21] Following the V9.0 release, VSI released a series of updates on a monthly or bimonthly basis which added additional functionality and hypervisor support. These were designated V9.0-A through V9.0-H.[82] In June 2021, VSI released the V9.1 Field Test, making it available to VSI's customers and partners.[83] V9.1 shipped as an ISO image which can be installed onto a variety of hypervisors, and onto HPE ProLiant DL380 servers starting with the V9.1-A release.[84]

Influence

During the 1980s, the MICA operating system for the PRISM architecture was intended to be the eventual successor to VMS. MICA was designed to maintain backwards compatibility with VMS applications while also supporting Ultrix applications on top of the same kernel.[85] MICA was ultimately cancelled along with the rest of the PRISM platform, leading Dave Cutler to leave DEC for Microsoft. At Microsoft, Cutler led the creation of the Windows NT operating system, which was heavily inspired by the architecture of MICA.[86] As a result, VMS is considered an ancestor of Windows NT, together with RSX-11, VAXELN and MICA, and many similarities exist between VMS and NT.[87]

A now-defunct project named FreeVMS attempted to develop an open source operating system following VMS conventions.[88][89] FreeVMS was built on top of the L4 microkernel and supported the x86-64 architecture. Prior work investigating the implementation of VMS using a microkernel-based architecture had previously been undertaken as a prototyping exercise by DEC employees with assistance from Carnegie Mellon University using the Mach 3.0 microkernel ported to VAXstation 3100 hardware, adopting a multiserver architectural model.[90]

Architecture

The architecture of the OpenVMS operating system, demonstrating the layers of the system, and the access modes in which they typically run

The OpenVMS operating system has a layered architecture, consisting of a privileged Executive, an intermediately-privileged Command Language Interpreter, and unprivileged utilities and run-time libraries (RTLs).[91] Unprivileged code typically invokes the functionality of the Executive through system services (equivalent to system calls in other operating systems).

OpenVMS' layers and mechanisms are built around certain features of the VAX architecture, including:[91][92]

  • The availability of four processor access modes (named Kernel, Executive, Supervisor and User, in order of decreasing privilege). Each mode has its own stack, and each memory page can have memory protections specified per-mode.
  • A virtual address space which is partitioned between process-private space sections, and system space sections which are common to all processes.
  • 32 interrupt priority levels which are used for synchronization.
  • Hardware support for delivering asynchronous system traps to processes.

These VAX architecture mechanisms are implemented on Alpha, Itanium and x86-64 by either mapping to corresponding hardware mechanisms on those architectures, or through emulation (via PALcode on Alpha, or in software on Itanium and x86-64).[70]

Executive and Kernel

The OpenVMS Executive comprises the privileged code and data structures which reside in the system space. The Executive is further subdivided between the Kernel, which consists of the code which runs at the kernel access mode, and the less-privileged code outside of the Kernel which runs at the executive access mode.[91]

The components of the Executive which run at executive access mode include the Record Management Services, and certain system services such as image activation. The main distinction between the kernel and executive access modes is that most of the operating system's core data structures can be read from executive mode, but require kernel mode to be written to.[92] Code running at executive mode can switch to kernel mode at will, meaning that the barrier between the kernel and executive modes is intended as a safeguard against accidental corruption as opposed to a security mechanism.[93]

The Kernel comprises the operating system's core data structures (e.g. page tables, the I/O database and scheduling data), and the routines which operate on these structures. The Kernel is typically described as having three major subsystems: I/O, Process and Time Management, Memory Management.[91][92] In addition, other functionality such as logical name management, synchronization and system service dispatch are implemented inside the Kernel.

OpenVMS allows user mode code with suitable privileges to switch to executive or kernel mode using the $CMEXEC and $CMKRNL system services, respectively.[94] This allows code outside of system space to have direct access to the Executive's routines and system services. In addition to allowing third-party extensions to the operating system, Privileged Images are used by core operating system utilities to manipulate operating system data structures through undocumented interfaces.[95]

File system

The typical user and application interface into the file system is the Record Management Services (RMS), although applications can interface directly with the underlying file system through the QIO system services.[96] The file systems supported by VMS are referred to as the Files-11 On-Disk Structures (ODS), the most significant of which are ODS-2 and ODS-5.[97] VMS is also capable of accessing files on ISO 9660 CD-ROMs and magnetic tape with ANSI tape labels.[98]

Files-11 is limited to 2TiB volumes.[97] DEC attempted to replace it with a log-structured file system file system named Spiralog first released in 1995.[99] However, Spiralog was discontinued due to a variety of problems, including issues with handling full volumes.[100] Instead, there has been discussion of porting the open source GFS2 file system to OpenVMS.[101]

Command Language Interpreter

An OpenVMS Command Language Interpreter (CLI) implements a command-line interface for OpenVMS; responsible for executing individual commands, as well as command procedures (equivalent to shell scripts or batch files).[102] The standard CLI for OpenVMS is the DIGITAL Command Language, although other options are available as well.

Unlike Unix shells, which typically run in their own isolated process and behave like any other user mode program, OpenVMS CLIs are an optional component of a process, which exist alongside any executable image which that process may run.[103] Whereas a Unix shell will typically run executables by creating a separate process using fork-exec, an OpenVMS CLI will typically load the executable image into the same process, transfer control to the image, and ensure that control is transferred back to CLI once the image has exited and that the process is returned to its original state.[91]

Due to the fact that the CLI is loaded into the same address space as user code, and that the CLI is responsible for invoking image activation and image rundown, the CLI is mapped into the process address space at supervisor access mode - a higher level of privilege than most user code. This is in order to prevent accidental or malicious manipulation of the CLI's code and data structures by user mode code.[91][103]

Features

VAXstation 4000 model 96 running OpenVMS V6.1, DECwindows Motif and the NCSA Mosaic browser

Clustering

Main page: VMScluster

OpenVMS supports clustering (first called VAXcluster and later VMScluster), where multiple computers run their own instance of the operating system. Clustered computers (nodes) may be fully independent from each other, or they may share devices like disk drives and printers. Communication across nodes provides a single system image abstraction.[104] Nodes may be connected to each other via a proprietary hardware connection called Cluster Interconnect or via a standard Ethernet LAN.

OpenVMS supports up to 96 nodes in a single cluster. It also allows mixed-architecture clusters.[24] OpenVMS clusters allow applications to function during planned or unplanned outages.[105] Planned outages include hardware and software upgrades.[106]

Networking

Main page: DECnet

The DECnet protocol suite is tightly integrated into VMS, allowing remote logins, as well as transparent access to files, printers and other resources on VMS systems over a network.[107] VAX/VMS V1.0 featured support for DECnet Phase II,[108] and modern versions of VMS support both the traditional Phase IV DECnet protocol, as well as the OSI-compatible Phase V (also known as DECnet-Plus).[109] Support for TCP/IP is provided by the optional TCP/IP Services for OpenVMS layered product (originally known as the VMS/ULTRIX Connection, then as the ULTRIX Communications Extensions or UCX).[110][111] TCP/IP Services is based on a port of the BSD network stack to OpenVMS,[112] along with support for common protocols such as SSH, DHCP, FTP and SMTP.

DEC sold a software package named PATHWORKS (originally known as the Personal Computer Systems Architecture or PCSA) which allowed personal computers running MS-DOS, Microsoft Windows or OS/2, or the Apple Macintosh to serve as a terminal for VMS systems, or to use VMS systems as a file or print server.[113] PATHWORKS was later renamed to Advanced Server for OpenVMS, and was eventually replaced with a VMS port of Samba at the time of the Itanium port.[114]

DEC provided the Local Area Transport (LAT) protocol which allowed remote terminals and printers to be attached to a VMS system through a terminal server such as one of the DECserver family.[115]

Programming

DEC (and its successor companies) provided a wide variety of programming languages for VMS. Officially supported languages on VMS, either current or historical, include:[116][117]



Among OpenVMS's notable features is the Common Language Environment, a strictly defined standard that specifies calling conventions for functions and routines, including use of stacks, registers, etc., independent of programming language.[118] Because of this, it is possible to call a routine written in one language (for example, Fortran) from another (for example, COBOL), without needing to know the implementation details of the target language. OpenVMS itself is implemented in a variety of different languages and the common language environment and calling standard supports freely mixing these languages.[119] DEC created a tool named the Structure Definition Language (SDL), which allowed data type definitions to be generated for different languages from a common definition.[120]

Development Tools

The "Grey Wall" of VAX/VMS documentation, at Living Computers: Museum + Labs

DEC provided a collection of software development tools in a layered product named DECset (originally named VAXset).[116] This consisted of the following tools:[121]

The OpenVMS Debugger supports all DEC compilers and many third party languages. It allows breakpoints, watchpoints and interactive runtime program debugging either using a command line or graphical user interface.[123] A pair of lower-level debuggers, named DELTA and XDELTA, can be used to debug privileged code in additional to normal application code.[124]

In 2019, VSI released an officially-supported Integrated Development Environment for VMS based on Visual Studio Code.[76] This allows VMS applications to be developed and debugged remotely from a Microsoft Windows, macOS or Linux workstation.[125]

Database management

DEC created a number of optional database products for VMS, some of which were marketed as the VAX Information Architecture family.[126] These products included:

  • Rdb – A relational database system which originally used the proprietary Relational Data Operator (RDO) query interface, but later gained SQL support.[127]
  • DBMS – A database management system which uses the CODASYL network model and Data Manipulation Language (DML).
  • Digital Standard MUMPS (DSM) – an integrated programming language and key-value database.[116]
  • Common Data Dictionary (CDD) – a central database schema repository, which allowed schemas to be shared between different applications, and data definitions to be generated for different programming languages.
  • DATATRIEVE – a query and reporting tool which could access data from RMS files as well as Rdb and DBMS databases.
  • Application Control Management System (ACMS) – A transaction processing monitor, which allows applications to be created using a high-level Task Description Language (TDL). Individual steps of a transaction can be implemented using DCL commands, or Common Language Environment procedures. User interfaces can be implemented using TDMS, DECforms or Digital's ALL-IN-1 office automation product.[128]
  • RALLY, DECadmireFourth-generation programming languages (4GLs) for generating database-backed applications.[129] DECadmire featured integration with ACMS, and later provided support for generating Visual Basic client-server applications for Windows PCs.[130]

In 1994, DEC sold Rdb, DBMS and CDD to Oracle, where they remain under active development.[131] In 1995, DEC sold DSM to InterSystems, who renamed it Open M, and eventually replaced it with their Caché product.[132]

Examples of third-party database management systems for OpenVMS include MariaDB,[133] Mimer SQL[134] (Itanium and x86-64[135]), and System 1032.[136]

User interfaces

OpenVMS Alpha V8.4-2L1, showing the DCL CLI in a terminal session

VMS was originally designed to be used and managed interactively using DEC's text-based video terminals such as the VT100, or hardcopy terminals such as the DECwriter series. Since the introduction of the VAXstation line in 1984, VMS has optionally supported graphical user interfaces for use with workstations or X terminals such as the VT1000 series.

Text-based user interfaces

Main page: DIGITAL Command Language

The DIGITAL Command Language (DCL), has served as the primary command language interpreter (CLI) of OpenVMS since the first release.[137][30][10] Other official CLIs available for VMS include the RSX-11 MCR (VAX only), and various Unix shells.[116] DEC provided tools for creating text-based user interface applications – the Form Management System (FMS) and Terminal Data Management System (TDMS), later succeeded by DECforms.[138][139][140] A lower level interface named Screen Management Services (SMG$), comparable to Unix curses, also exists.[141]

Graphical user interfaces

VWS 4.5 running on top of VAX/VMS V5.5-2
DECwindows XUI window manager running on top of VAX/VMS V5.5-2

Over the years, VMS has gone through a number of different GUI toolkits and interfaces:

  • The original graphical user interface for VMS was a proprietary windowing system known as the VMS Workstation Software (VWS), which was first released for the VAXstation I in 1984.[142] It exposed an API called the User Interface Services (UIS).[143] It ran on a limited selection of VAX hardware.[144]
  • In 1989, DEC replaced VWS with a new X11-based windowing system named DECwindows.[145] It was first included in VAX/VMS V5.1.[146] Early versions of DECwindows featured an interface built on top of a proprietary toolkit named the X User Interface (XUI). A layered product named UISX was provided to allow VWS/UIS applications to run on top of DECwindows.[147] Parts of XUI were subsequently used by the Open Software Foundation as the foundation of the Motif toolkit.[148]
  • In 1991, DEC replaced XUI with the Motif toolkit, creating DECwindows Motif.[149][150] As a result, the Motif Window Manager became the default DECwindows interface in OpenVMS V6.0,[146] although the XUI window manager remained as an option.
  • In 1996, as part of OpenVMS V7.1,[146] DEC released the New Desktop interface for DECwindows Motif, based on the Common Desktop Environment (CDE).[151] On Alpha and Itanium systems, it is still possible to select the older MWM-based UI (referred to as the "DECwindows Desktop") at login time. The New Desktop was never ported to the VAX releases of OpenVMS.

Versions of VMS running on DEC Alpha workstations in the 1990s supported OpenGL[152] and Accelerated Graphics Port (AGP) graphics adapters. VMS also provides support for older graphics standards such as GKS and PHIGS.[153][154] Modern versions of DECwindows are based on X.Org Server.[10]

Security

OpenVMS provides various security features and mechanisms, including security identifiers, resource identifiers, subsystem identifiers, ACLs, intrusion detection and detailed security auditing and alarms.[155] Specific versions evaluated at Trusted Computer System Evaluation Criteria Class C2 and, with the SEVMS security enhanced release at Class B1.[156] OpenVMS also holds an ITSEC E3 rating (see NCSC and Common Criteria).[157] Passwords are hashed using the Purdy Polynomial.

Vulnerabilities

  • Early versions of VMS included a number of privileged user accounts (including SYSTEM, FIELD, SYSTEST and DECNET) with default passwords which were often left unchanged by system managers.[158][159] A number of computer worms for VMS including the WANK worm and the Father Christmas worm exploited these default passwords to gain access to nodes on DECnet networks.[160] This issue was also described by Clifford Stoll in The Cuckoo's Egg as a means by which Markus Hess gained unauthorized access to VAX/VMS systems.[161] In V5.0, the default passwords were removed, and it became mandatory to provide passwords for these accounts during system setup.[38]
  • A 33-year-old vulnerability in VMS on VAX and Alpha was discovered in 2017 and assigned the CVE ID CVE-2017-17482. On the affected platforms, this vulnerability allowed an attacker with access to the DCL command line to carry out a privilege escalation attack. The vulnerability relies on exploiting a buffer overflow bug in the DCL command processing code, the ability for a user to interrupt a running image (program executable) with CTRL/Y and return to the DCL prompt, and the fact that DCL retains the privileges of the interrupted image.[162] The buffer overflow bug allowed shellcode to be executed with the privileges of an interrupted image. This could be used in conjunction with an image installed with higher privileges than the attacker's account to bypass system security.[163]

POSIX compatibility

Various official Unix and POSIX compatibility layers were created for VMS. The first of which was DEC/Shell - which was a layered product consisting of ports of the Version 7 Unix Bourne shell and several other Unix utilities to VAX/VMS.[116] In 1992, DEC released the POSIX for OpenVMS layered product, which included a shell based on the KornShell.[164] POSIX for OpenVMS was later replaced by the open source GNV (GNU's not VMS) project, which was first included in OpenVMS media in 2002.[165] Amongst other GNU tools, GNV includes a port of the Bash shell to VMS.[166] Examples of third party Unix compatibility layers for VMS include Eunice.[167]

Hobbyist programs

In 1997, OpenVMS and a number of layered products were made available free of charge for hobbyist, non-commercial use as part of the OpenVMS Hobbyist Program.[168] Since then, several companies producing OpenVMS software have made their products available under the same terms, such as Process Software.[169] Prior to the x86-64 port, the age and cost of hardware capable of running OpenVMS made emulators such as SIMH a common choice for hobbyist installations.[170]

In March 2020, HPE announced the end of the OpenVMS Hobbyist Program.[171] This was followed by VSI's announcement of the Community License Program (CLP) in April 2020, which was intended as a replacement for the HPE Hobbyist Program.[172] The CLP was launched in July 2020, and provides licenses for VSI OpenVMS releases on Alpha, Integrity and x86-64 systems.[173] OpenVMS for VAX is not covered by the CLP, since there are no VSI releases of OpenVMS VAX, and the old versions are still owned by HPE.[174]

Release history

Release history of OpenVMS
Version Vendor Release date
[175][9][176]
End of support
[177][178][179]
Platform Significant changes, new hardware support
[180][146]
X0.5[n 1] DEC April 1978[181] ? VAX First version shipped to customers[29]
V1.0 August 1978 First production release
V1.01 ?[n 2] Bug fixes[182]
V1.5 February 1979[n 3] Support for native COBOL, BLISS compilers[182]
V1.6 August 1979 RMS-11 updates[183]
V2.0 April 1980 VAX-11/750, new utilities including EDT
V2.1 ?[n 4] ?
V2.2 April 1981 Process limit increased to 8,192[185]
V2.3 May 1981[186] Security enhancements[187]
V2.4 ? ?
V2.5 ? BACKUP utility[188]
V3.0 April 1982 VAX-11/730, VAX-11/725, VAX-11/782, ASMP
V3.1 August 1982 PL/I runtime bundled with base OS[189]
V3.2 December 1982 Support for RA60, RA80, RA81 disks[190]
V3.3 April 1983 HSC50 disk controller, BACKUP changes[191]
V3.4 June 1983 Ethernet support for DECnet,[192] VAX-11/785
V3.5 November 1983 Support for new I/O devices[193]
V3.6 April 1984 Bug fixes[194]
V3.7 August 1984 Support for new I/O devices[195]
V4.0 September 1984 VAX 8600, MicroVMS, VAXclusters[196]
V4.1 January 1985 MicroVAX/VAXstation I, II[197]
V4.2 October 1985 Text Processing Utility
V4.3 December 1985 DELUA Ethernet adapter support
V4.3A January 1986 VAX 8200
V4.4 July 1986 VAX 8800/8700/85xx, Volume Shadowing
V4.5 November 1986 Support for more memory in MicroVAX II
V4.5A December 1986 Ethernet VAXclusters
V4.5B March 1987 VAXstation/MicroVAX 2000
V4.5C May 1987 MicroVAX 2000 cluster support
V4.6 August 1987 VAX 8250/8350/8530, RMS Journalling
V4.7 January 1988 First release installable from CD-ROM
V4.7A March 1988 VAXstation 3200/3500, MicroVAX 3500/3600
V5.0 April 1988 VAX 6000, SMP, LMF, Modular Executive
V5.0-1 August 1988 Bug fixes
V5.0-2 October 1988
V5.0-2A MicroVAX 3300/3400
V5.1 February 1989 DECwindows
V5.1-B VAXstation 3100 30/40, Desktop-VMS
V5.1-1 June 1989 VAXstation 3520/3540, MicroVAX 3800/3900
V5.2 September 1989 Cluster-wide process visibility/management
V5.2-1 October 1989 VAXstation 3100 38/48
V5.3 January 1990 Support for third-party SCSI devices
V5.3-1 April 1990 Support for VAXstation SPX graphics
V5.3-2 May 1990 Support for new I/O devices
V5.4 October 1990 VAX 65xx, VAX Vector Architecture
V5.4-0A VAX 9000, bug fixes for VAX 6000 systems
V5.4-1 November 1990 New models of VAX 9000, VAXstation, VAXft
V5.4-1A January 1991 VAX 6000-400
V5.4-2 March 1991 VAX 4000 Model 200, new I/O devices
V5.4-3 October 1991 FDDI adapter support
V5.5 November 1991 Cluster-wide batch queue, new VAX models
A5.5 Same as V5.5 but without new batch queue
V5.5-1 July 1992 Bug fixes for batch/print queue
V5.5-2HW September 1992 VAX 7000/10000, and other new VAX hardware
V5.5-2 November 1992 September 1995 Consolidation of previous hardware releases
V5.5-2H4 August 1993 New VAX 4000 models, additional I/O devices
V5.5-2HF ? VAXft 810
V1.0[n 5] November 1992 Alpha First release for Alpha architecture
V1.5 May 1993 Cluster and SMP support for Alpha
V1.5-1H1 October 1993 New DEC 2000, DEC 3000 models
V6.0 June 1993 VAX TCSEC C2 compliance, ISO 9660, Motif
V6.1 April 1994 VAX, Alpha Merger of VAX and Alpha releases, PCSI
V6.1-1H1 September 1994 Alpha New AlphaStation, AlphaServer models
V6.1-1H2 November 1994
V6.2 June 1995 March 1998 VAX, Alpha Command Recall, DCL$PATH, SCSI clusters
V6.2-1H1 December 1995 Alpha New AlphaStation, AlphaServer models
V6.2-1H2 March 1996
V6.2-1H3 May 1996
V7.0 January 1996 VAX, Alpha 64-bit addressing, Fast Path I/O, Kernel Threads
V7.1 January 1997 July 2000 Very Large Memory support, DCL PIPE, CDE
V7.1-1H1 November 1997 Alpha AlphaServer 800 5/500, 1200
V7.1-1H2 April 1998 Support for booting from third party devices
V7.1-2 Compaq December 1998 Additional I/O device support
V7.2 February 1999 June 2002 VAX, Alpha OpenVMS Galaxy, ODS-5, DCOM
V7.2-1 July 1999 Alpha AlphaServer GS140, GS60, Tsunami
V7.2-1H1 June 2000 AlphaServer GS160, GS320
V7.2-2 September 2001 December 2002 Minicopy support for Volume Shadowing
V7.2-6C1 August 2001 ? DII COE conformance[198]
V7.2-6C2 July 2002
rowspan=2 V7.3 June 2001 December 2012 VAX Final release for VAX architecture
June 2004 Alpha ATM and GBE clusters, Extended File Cache
V7.3-1 HP August 2002 December 2004 Alpha Security and performance improvements
V7.3-2 December 2003 December 2006 AlphaServer GS1280, DS15
V8.0 June 2003 December 2003 IA64 Evaluation release for Integrity servers
V8.1 December 2003 February 2005 Second evaluation release for Integrity servers
V8.2 February 2005 June 2010 Alpha, IA64 Production release for Integrity servers
V8.2-1 September 2005 IA64 Support for HP Superdome, rx7620, rx8620
V8.3 August 2006 December 2015 Alpha, IA64 Support for additional Integrity server models
V8.3-1H1 November 2007 IA64 Support for HP BL860c, dual-core Itanium
V8.4 June 2010 December 2020 Alpha, IA64 Support for HPVM, clusters over TCP/IP[199]
V8.4-1H1 VSI May 2015 December 2022 IA64 Support for Poulson processors[200]
V8.4-2 March 2016 Support for HPE BL890c systems, UEFI 2.3
rowspan=2 V8.4-2L1 September 2016 December 2024 OpenSSL updated to 1.0.2[201]
January 2017[202] TBA Alpha
V8.4-2L2 July 2017 Final release for Alpha architecture[203]
V8.4-2L3 April 2021 December 2028 IA64 Final release for Integrity servers[203]
V9.0 May 2020 June 2021 x86-64 x86-64 Early Adopter's Kit[204]
V9.1 June 2021 September 2021 x86-64 Field Test[83]
V9.1-A September 2021 April 2022 HPE Proliant DL380, DECnet-Plus[84]
V9.2 July 2022 June 2023 x86-64 Limited Production Release[205]
V9.2-1 June 2023 December 2026 AMD CPUs, OpenSSL 3.0, native compilers[206]
V9.2-2 January 2024 TBA Bug fixes[6]
{{{2}}}
  1. X0.5 was also known as "Base Level 5".[181]
  2. While an exact release date is unknown, the V1.01 change log dates in the release notes for V1.5 suggest it was released some time after November 1978.[182]
  3. For some of the early VAX/VMS releases where an official release date is not known, the date of the Release Notes has been used an approximation.
  4. The existence of releases V2.0 through V2.5 are documented in the V3.0 release notes.[184]
  5. While the versioning scheme reset to V1.0 for the first AXP (Alpha) releases, these releases were contemporaneous with the V5.x releases and had a similar feature set.

See also

References

  1. Patrick Thibodeau (July 31, 2014). "HP gives OpenVMS new life". Computerworld. https://www.computerworld.com/article/2490683/operating-systems-hp-gives-openvms-new-life.html. 
  2. Camiel Vanderhoeven (May 30, 2021). "How much of VMS is still in MACRO-32?". Newsgroupcomp.os.vms. Retrieved October 21, 2021.
  3. "2.7 In what language is OpenVMS written?". The OpenVMS Frequently Asked Questions (FAQ). Hewlett Packard Enterprise. http://h41379.www4.hpe.com/faq/vmsfaq_002.html#vms8. 
  4. 4.0 4.1 "Access to OpenVMS Source Code?". HP OpenVMS Systems ask the wizard. September 2, 1999. http://h41379.www4.hpe.com/wizard/wiz_2993.html. 
  5. "Webinar 16: x86 Update". VSI. October 15, 2021. https://www.youtube.com/watch?v=E8X3tGlFgo8. 
  6. 6.0 6.1 "OpenVMS V9.2-2 public availability". 2024-01-25. https://vmssoftware.com/about/news/2024-01-25-openvms-v922-release-availability/. 
  7. "Japanese OpenVMS OS (JVMS)". https://vmssoftware.com/products/jvms/. 
  8. Michael M. T. Yau (1993). "Supporting the Chinese, Japanese, and Korean Languages in the OpenVMS Operating System". Digital Technical Journal 5 (3). http://www.dtjcd.vmsresource.org.uk/pdfs/dtj_v05-03_1993.pdf. Retrieved October 21, 2021. 
  9. 9.0 9.1 9.2 9.3 9.4 9.5 "OpenVMS at 20 Nothing stops it". Digital Equipment Corporation. October 1997. https://h50146.www5.hpe.com/products/software/oe/openvms/history/vaxvms20/pdf/vmsbook.pdf. 
  10. 10.0 10.1 10.2 10.3 "Software Product Description and QuickSpecs - VSI OpenVMS Version 8.4-2L1 for Integrity servers". VMS Software Inc.. July 2019. https://vmssoftware.com/docs/VSI_OVMS_SPDQS_OS_V842L1I_UPD1.pdf. 
  11. "VSI Business & New Products Update – April 9, 2019". VSI. April 2019. https://vmssoftware.com/docs/VMS_Software_Inc.-April_2019_Update_7am_Session.pdf. 
  12. Charles Babcock (November 1, 2007). "VMS Operating System Is 30 Years Old; Customers Believe It Can Last Forever". InformationWeek. https://www.informationweek.com/vms-operating-system-is-30-years-old-customers-believe-it-can-last-forever/d/d-id/1061051?. Retrieved February 19, 2021. 
  13. Drew Robb (November 1, 2004). "OpenVMS survives and thrives". computerworld.com. https://www.computerworld.com/article/2567299/openvms-survives-and-thrives.html. 
  14. Tao Ai Lei (May 30, 1998). "Digital tries to salvage OpenVMS". computerworld.co.nz. http://www2.computerworld.co.nz/article/516907/digital_tries_salvage_openvms/. 
  15. Jesse Lipcon (October 1997). "OpenVMS: 20 Years of Renewal". Digital Equipment Corporation. http://h71000.www7.hp.com/openvms/20th/vms20/vms20.ppt. 
  16. "VAX-11/780 Hardware Handbook". Digital Equipment Corporation. 1979. http://bitsavers.org/pdf/dec/vax/handbook/VAX_Hardware_Handbook_1979.pdf. 
  17. Patrick Thibodeau (June 11, 2013). "OpenVMS, R.I.P. 1977-2020?". Computerworld. https://www.computerworld.com/article/2497657/operating-systems/openvms--r-i-p--1977-2020-.html. 
  18. Tom Merritt (2012). Chronology of Tech History. Lulu.com. p. 104. ISBN 978-1300253075. https://books.google.com/books?isbn=130025307X. 
  19. "VAX 11/780 - OLD-COMPUTERS.COM : HISTORY / detailed info". https://www.old-computers.com/history/detail.asp?n=20&t=3. 
  20. "VSI Products". VSI. https://vmssoftware.com/products. 
  21. 21.0 21.1 "Rollout of V9.0 and Beyond". May 19, 2020. https://vmssoftware.com/docs/may-19-2020-v9.0-rollout-and-beyond.pdf. 
  22. "HP hands off OpenVMS development to VSI". August 1, 2014. http://www.techtimes.com/articles/11907/20140801/openvms-gets-a-new-leash-on-life.htm. 
  23. "VMS Software, Inc. Named Exclusive Developer of Future Versions of OpenVMS Operating System" (Press release). Retrieved October 27, 2017.
  24. 24.0 24.1 "VSI Products - Clusters". https://vmssoftware.com/products/clusters/. 
  25. "Cluster Uptime". November 28, 2003. http://www.openvms.org/stories.php?story=03/11/28/7758863. 
  26. "Commerzbank Survives 9/11 with OpenVMS Clusters". July 2009. http://www.availabilitydigest.com/public_articles/0407/commerzbank.pdf. 
  27. "February 2018 Business & Technical Update". VSI. February 2018. https://vmssoftware.com/docs/w1_Feb2018_Update.pdf. 
  28. Cutler, Dave (February 25, 2016). "Dave Cutler Oral History". youtube.com (Interview). Interviewed by Grant Saviers. Computer History Museum. Archived from the original on December 11, 2021. Retrieved February 26, 2021.
  29. 29.0 29.1 Stephen Hoffman (September 2006). "What is OpenVMS? What is its history?". http://www.hoffmanlabs.com/vmsfaq/vmsfaq_001.html. 
  30. 30.0 30.1 "Software Product Description - VAX/VMS Operating System, Version 1.0". Digital Equipment Corporation. September 1978. http://www.bitsavers.org/www.computer.museum.uq.edu.au/pdf/AE-C770B-TE%20VAX-VMS%20Operating%20System,%20Version%201.0%20SPD%2025.1.2.pdf. 
  31. "a simple question: what the h*ll is MCR?". Newsgroupcomp.os.vms. September 14, 2004. Retrieved December 31, 2020.
  32. "Software Product Description VAX-11 RSX, Version 1.0". Digital Equipment Corporation. October 1984. http://bitsavers.org/pdf/dec/vax/vms/4.0/AE-DL72A-TE_VAX_RSX_1.0_SPD_198410.pdf. 
  33. "Hello from....well what used to be SpitBrook". February 27, 2007. http://www.openvmshobbyist.com/forum/viewthread.php?forum_id=130&thread_id=332. 
  34. "Computer system VAX/VMS". http://www.altiq.se/vax-vms/vax-vms-eng.html. 
  35. Michael D Duffy (2002). Getting Started with OpenVMS: A Guide for New Users. Elsevier. ISBN 978-0080507354. https://books.google.com/books?isbn=0080507352. 
  36. "Micro VMS operating system". Computerworld: p. 7. June 18, 1984. https://books.google.com/books?id=aqjZTUJlyygC. "The Micro VMS operating system announced last week by Digital Equipment Corp. for its Microvax I family of microcomputers is a prepackaged version of ..." 
  37. Kathleen D. Morse. "The VMS/MicroVMS merge". DEC Professional Magazine: 74–84. 
  38. 38.0 38.1 "VMS Version 5.0 Release Notes". DEC. April 1988. http://bitsavers.trailing-edge.com/pdf/dec/vax/vms/5.0/AA-LB22A-TE_VMS_5.0_Release_Notes_198804.pdf. 
  39. Bob McCormick (January 11, 1989). "DECUServe WORKSTATIONS Conference 8". http://home.iae.nl/users/pb0aia/vax/dsvs3100.html. 
  40. "Office Archaeology". February 24, 2004. http://blog.nozell.com/2004/02/office-archeology.html. 
  41. "Software Product Description - Desktop-VMS, Version 1.2". Digital. January 1991. http://www.digital.com/info/SP25F4/SP25F4PF.PDF. 
  42. "OpenVMS pages of proGIS Germany". http://vaxarchive.org/hardware/vms-hw.html. 
  43. D.O. Andrievskaya, ed (May 1989). "Computer Complexes, Technical Equipment, Software And Support Of The System Of Small Electronic Computer Machines (SM Computer)" (in Russian). Soviet Union Research Institute of Information and Economics. http://oldpc.su/lib/gsp/sm89.pdf. 
  44. Prokhorov N.L.; Gorskiy V.E.. "Basic software for 32-bit SM computer models" (in Russian). Software Systems Journal 1988 (3). http://www.swsys.ru/index.php?page=article&id=1480#. Retrieved October 15, 2021. 
  45. Egorov G.A.; Ostapenko G.P.; Stolyar N.G.; Shaposhnikov V.A.. "Multifunctional operating system that supports virtual memory for 32-bit computers" (in Russian). Software Systems Journal 1988 (4). http://www.swsys.ru/index.php?page=article&id=1491#. Retrieved October 15, 2021. 
  46. "Installing OS MOS-32M" (in Russian). June 16, 2012. https://mirrors.pdp-11.ru/_vax__/_MOC-32/MOC-32M45/moc-32m-install-1.1.pdf. 
  47. "VMS Version 5.0 Release Notes". Digital Equipment Corporation. April 1988. http://www.bitsavers.org/pdf/dec/vax/vms/5.0/AA-LB22A-TE_VMS_5.0_Release_Notes_198804.pdf. 
  48. "Digital Introduces First Generation of OpenVMS Alpha-Ready Systems". Digital Equipment Corporation. July 15, 1992. https://tech-insider.org/vms/research/1992/0715.html. 
  49. "OpenVMS Definition from PC Magazine Encyclopedia". https://www.pcmag.com/encyclopedia/term/48503/openvms. 
  50. Arne Vajhøj (November 29, 1999). "OpenVMS FAQ - What is the difference between VMS and OpenVMS?". http://www.vaxmacro.de/ovmsfaq.html. 
  51. "History of the Vernon the VMS shark". http://www.vaxination.ca/vms/shark/history.html. 
  52. Dave Cutler (May 30, 1988). "DECwest/SDT Agenda". http://www.bitsavers.org/pdf/dec/prism/memos/880530_Cutler_PRISM_vs_MIPS.pdf. 
  53. "EV-4 (1992)". February 24, 2008. http://simh.trailing-edge.com/semi/ev4.html. 
  54. 54.0 54.1 Comerford, R. (July 1992). "How DEC developed Alpha". IEEE Spectrum 29 (7): 26–31. doi:10.1109/6.144508. 
  55. "Managing Technological Leaps: A study of DEC's Alpha Design Team". April 1993. https://dspace.mit.edu/bitstream/handle/1721.1/48380/managingtechnolo00katz.pdf. 
  56. Supnik, Robert M. (1993). "Digital's Alpha project". Communications of the ACM 36 (2): 30–32. doi:10.1145/151220.151223. ISSN 0001-0782. 
  57. 57.0 57.1 57.2 Clair Grant (June 2005). "Porting OpenVMS to HP Integrity Servers". OpenVMS Technical Journal 6. http://www.decus.de/events/alphamigration/vortraege/porting_openvms_to_integrity.pdf. 
  58. 58.0 58.1 Nancy P. Kronenberg; Thomas R. Benson; Wayne M. Cardoza; Ravindran Jagannathan; Benjamin J. Thomas III (1992). "Porting OpenVMS from VAX to Alpha AXP". Digital Technical Journal 4 (4). https://www.hpl.hp.com/hpjournal/dtj/vol4num4/vol4num4art7.pdf. Retrieved October 3, 2022. 
  59. 59.0 59.1 "OpenVMS Compatibility Between VAX and Alpha". Digital Equipment Corporation. May 1995. https://support.hpe.com/hpsc/doc/public/display?docId=emr_na-c04623258. 
  60. "Extending OpenVMS for 64-bit Addressable Virtual Memory". Digital Technical Journal 8 (2): 57–71. 1996. 
  61. "The OpenVMS Mixed Pointer Size Environment". Digital Technical Journal 8 (2): 72–82. 1996. https://pdfs.semanticscholar.org/8d96/bbba019c43e80f059825311b67c975a0fede.pdf. 
  62. "VSI OpenVMS Programming Concepts Manual, Vol. 1". VSI. April 2020. https://vmssoftware.com/docs/VSI_PROGRAM_CONCEPTS_VOL_I.pdf. 
  63. "HP OpenVMS Alpha Partitioning and Galaxy Guide". HP. September 2003. https://support.hpe.com/hpesc/public/docDisplay?docId=emr_na-c04621422. 
  64. James Niccolai (October 14, 1998). "Compaq details strategy for OpenVMS". Australian Reseller News. https://www.arnnet.com.au/article/111492/compaq_details_strategy_openvms/. 
  65. "Compaq OpenVMS Times". January 2002. http://h71000.www7.hp.com/openvmstimes/openvmstimes.pdf. 
  66. Andrew Orlowski (June 25, 2001). "Farewell then, Alpha – Hello, Compaq the Box Shifter". https://www.theregister.com/2001/06/25/farewell_then_alpha_hello_compaq/. 
  67. Sue Skonetski (January 31, 2003). "OpenVMS Boots on Itanium on Friday Jan 31". Newsgroupcomp.os.vms. Retrieved December 21, 2020.
  68. "HP C Installation Guide for OpenVMS Industry Standard 64 Systems". HP. June 2007. https://vmssoftware.com/docs/ig_bvbv.pdf. 
  69. Thomas Siebold (2005). "OpenVMS Integrity Boot Environment". http://www.decus.de/slides/sy2005/06_04/2g04.pdf. 
  70. 70.0 70.1 70.2 Camiel Vanderhoeven (October 8, 2017). Re-architecting SWIS for X86-64. YouTube. Archived from the original on December 11, 2021. Retrieved October 21, 2021.
  71. Gaitan D’Antoni (2005). "Porting OpenVMS Applications to Itanium". http://www.hp-user-society.de/events/alphamigration/vortraege/porting_openvms_applications_to_itanium.pdf. 
  72. "OpenVMS floating-point arithmetic on the Intel Itanium architecture". 2003. http://www.decus.de/events/alphamigration/vortraege/i64-floating-pt-wp.pdf. 
  73. Thomas Siebold (2005). "OpenVMS Moving Custom Code". http://www.decus.de/slides/sy2005/06_04/2g05.pdf. 
  74. Paul Lacombe (2005). "HP OpenVMS Strategy and Futures". http://de.openvms.org/TUD2005/12_Open_VMS_Strategy_Paul_Lacombe.pdf. 
  75. "VMS Software, Inc. Named Exclusive Developer of Future Versions of OpenVMS Operating System.". July 31, 2014. http://www.businesswire.com/news/home/20140731006118/en/VMS-Software-Named-Exclusive-Developer-Future-Versions. 
  76. 76.0 76.1 "OpenVMS Rolling Roadmap". VSI. December 2019. https://vmssoftware.com/pdfs/VSI_Roadmap_20191209.pdf. 
  77. "VSI V9.0 Q&A". June 16, 2020. https://vmssoftware.com/updates/v9-qa/. 
  78. VSI (June 1, 2021). OpenVMS x64 Atom Project. YouTube. Archived from the original on December 11, 2021. Retrieved June 2, 2021.
  79. 2017 LLVM Developers' Meeting: J. Reagan "Porting OpenVMS using LLVM". YouTube. October 31, 2017. Archived from the original on December 11, 2021.
  80. "State of the Port to x86_64 January 2017.". January 6, 2017. http://www.vmssoftware.com/pdfs/State_of_Port_20170105.pdf. 
  81. "VMS Software Inc. Announces First Boot on x86 Architecture". May 14, 2019. https://vmssoftware.com/about/news/2019-05-14-vms-software-inc-announces-first-boot-on-x86-architecture/. 
  82. "State of the Port". https://vmssoftware.com/updates/state-of-the-port/. 
  83. 83.0 83.1 "OpenVMS 9.1". June 30, 2021. https://vmssoftware.com/about/openvmsv9-1/. 
  84. 84.0 84.1 "VMS Software Releases OpenVMS V9.1-A". September 30, 2021. https://vmssoftware.com/about/news/2021-09-30-openvms-9/. 
  85. "MICA Software Business Plan". March 1987. http://www.bitsavers.org/pdf/dec/prism/mica/Mica_Software_Business_Plan_Mar87.pdf. 
  86. Zachary, G. Pascal (2014) (in en). Showstopper!: The Breakneck Race to Create Windows NT and the Next Generation at Microsoft. Open Road Media. ISBN 978-1-4804-9484-8. https://books.google.com/books?id=o2IkAwAAQBAJ&q=%22Dave+Cutler%22+march+13&pg=PT9. Retrieved January 4, 2021. 
  87. Mark Russinovich (October 30, 1998). "Windows NT and VMS: The Rest of the Story". https://www.itprotoday.com/compute-engines/windows-nt-and-vms-rest-story. 
  88. Eugenia Loli (November 23, 2004). "FreeVMS 0.1.0 Released". https://www.osnews.com/story/8953/freevms-010-released/. 
  89. "FreeVMS official web page". http://www.freevms.net/. 
  90. Wiecek, Cheryl A.; Kaler, Christopher G.; Fiorelli, Stephen; Davenport, Jr., William C.; Chen, Robert C. (April 1992). "A Model and Prototype of VMS Using the Mach 3.0 Kernel". Proceedings of the USENIX Workshop on Micro-Kernels and Other Kernel Architectures: 187–203. https://archive.org/details/1992-proceedings-microkernels-seattle/page/187/mode/1up. Retrieved September 20, 2021. 
  91. 91.0 91.1 91.2 91.3 91.4 91.5 Ruth E. Goldenberg; Lawrence J. Kenah; Denise E. Dumas (1991). VAX/VMS Internals and Data Structures, Version 5.2. Digital Press. ISBN 978-1555580599. https://books.google.com/books?id=D7xQAAAAMAAJ. 
  92. 92.0 92.1 92.2 "Writing VMS Privileged Code Part I: The Fundamentals, Part 1". https://hunter.goatley.com/vms/internals1.html. 
  93. Paul A. Karger; Mary Ellen Zurko; Douglas W. Benin; Andrew H. Mason; Clifford E. Kahnh (May 7–9, 1990). "A VMM security kernel for the VAX architecture". Proceedings. 1990 IEEE Computer Society Symposium on Research in Security and Privacy. IEEE. doi:10.1109/RISP.1990.63834. https://www.scs.stanford.edu/nyu/04fa/sched/readings/vmm.pdf. Retrieved January 31, 2021. 
  94. "VSI OpenVMS System Services Reference Manual: A–GETUAI". VSI. June 2020. https://vmssoftware.com/docs/VSI_SYS_SERVICES_REF_VOL_I.PDF. 
  95. Wayne Sewell (1992). Inside VMS: The System Manager's and System Programmer's Guide to VMS Internals. Van Nostrand Reinhold. ISBN 0-442-00474-5. https://books.google.com/books?id=c4UhAQAAIAAJ. 
  96. "VSI OpenVMS I/O User's Reference Manual". VSI. August 2019. https://vmssoftware.com/docs/VSI_IO_REF.pdf. 
  97. 97.0 97.1 "Andy Goldstein on Files-11, the OpenVMS File Systems". VSI Official Channel. July 25, 2019. https://www.youtube.com/watch?v=b0YenelPw-Y. 
  98. "VSI OpenVMS Guide to OpenVMS File Applications". VSI. July 23, 2019. https://vmssoftware.com/docs/VSI_Gd_to_File_Apps_23Jul19.pdf. 
  99. "Why was Spiralog retired?". January 10, 2006. https://community.hpe.com/t5/Operating-System-OpenVMS/Why-was-Spiralog-retired/td-p/4951205. 
  100. "Why was Spiralog retired?". January 10, 2006. https://community.hpe.com/t5/Operating-System-OpenVMS/Why-was-Spiralog-retired/td-p/4951205. 
  101. "VSI OpenVMS Software Roadmap 2020". September 2020. https://vmssoftware.com/pdfs/VMS_Software_Roadmap_2020.pdf. 
  102. "OpenVMS User's Manual". July 2020. Chapter 14, Advanced Programming with DCL. https://vmssoftware.com/docs/VSI_USERS_MANUAL.pdf. 
  103. 103.0 103.1 Simon Clubley (July 3, 2017). "How dangerous is it to be able to get into DCL supervisor mode?". Newsgroupcomp.os.vms. Retrieved February 1, 2021.
  104. "VSI OpenVMS Cluster Systems". VSI. August 2019. https://vmssoftware.com/docs/VSI_OpenVMS_Cluster_Systems.pdf. 
  105. "Building Dependable Systems: The OpenVMS Approach". DEC. May 1994. https://www.digiater.nl/openvms/doc/alpha-v8.3/ovms_archived/BUILD_DEPEND_SYS.PDF. 
  106. "Cluster Uptime". November 28, 2003. http://www.openvms.org/stories.php?story=03/11/28/7758863. 
  107. "DECnet for OpenVMS Guide to Networking". VSI. August 2020. https://vmssoftware.com/docs/VSI_DECnet_IV_Gd_to_Networking.pdf. 
  108. "Software Product Description: DECnet-VAX, Version 1". DEC. September 1978. https://archive.org/download/bitsavers_decspd25.0_392688/25.03.01_7809_DECnet-VAX_V1.pdf. 
  109. "VSI Products - DECnet". VSI. https://vmssoftware.com/products/decnet/. 
  110. "VMS/ULTRIX System Manager's Guide". Digital Equipment Corporation. September 1990. https://archive.org/details/hack42_VMS-ULTRIX_Connection_Volume_1_System_Managers_Guide. 
  111. "VSI OpenVMS TCP/IP User's Guide". VSI. August 2019. https://vmssoftware.com/docs/VSI_TCPIP_USERS_GD.PDF. 
  112. Robert Rappaport; Yanick Pouffary; Steve Lieman; Mary J. Marotta (2004). "Parallelism and Performance in the OpenVMS TCP/IP Kernel". OpenVMS Technical Journal 4. https://support.hpe.com/hpesc/public/docDisplay?docId=emr_na-c04623334. 
  113. Alan Abrahams; David A. Low (1992). "An Overview of the PATHWORKS Product Family". Digital Technical Journal 4 (1). https://www.hpl.hp.com/hpjournal/dtj/vol4num1/vol4num1art1.pdf. 
  114. Andy Goldstein (2005). "Samba and OpenVMS". http://de.openvms.org/TUD2005/02_Advanced_Server_and_Samba_Andy_Goldstein.pdf. 
  115. "Local Area Transport Network Concepts". DEC. June 1988. http://www.bitsavers.org/pdf/dec/ethernet/decserver_300/AA-LD84A-TK_LAT_Network_Concepts_Jun88.pdf. 
  116. 116.0 116.1 116.2 116.3 116.4 "VAX/VMS Software Language and Tools Handbook". 1985. http://bitsavers.org/pdf/dec/vax/handbook/VMS_Language_and_Tools_Handbook_1985.pdf. 
  117. "VSI List of Products". https://vmssoftware.com/products/list/. 
  118. "VSI OpenVMS Calling Standard". January 2021. https://vmssoftware.com/docs/VSI_CALLING_STD.pdf. 
  119. "VSI OpenVMS Programming Concepts Manual, Volume II". VSI. April 2020. https://vmssoftware.com/docs/VSI_PROGRAM_CONCEPTS_VOL_II.pdf. 
  120. "SDL, LANGUAGE, Data Structure/Interface Definition Language". November 1996. https://www.digiater.nl/openvms/freeware/v30/sdl/freeware_readme.txt. 
  121. "DECset". https://vmssoftware.com/products/decset/. 
  122. "VSI OpenVMS DCL Dictionary: A-M". VSI. April 2020. https://vmssoftware.com/docs/VSI_DCL_DICT_VOL_I.pdf. 
  123. "VSI OpenVMS Debugger Manual". VSI. June 2020. https://vmssoftware.com/docs/VSI_DEBUGGER.pdf. 
  124. "VSI OpenVMS Delta/XDelta Debugger Manual". VSI. August 2019. https://vmssoftware.com/docs/VSI_DELTA_XDELTA.pdf. 
  125. "VMS IDE". https://marketplace.visualstudio.com/items?itemName=VMSSoftwareInc.vms-ide. 
  126. "VAX/VMS Software Information Management Handbook". Digital Equipment Corporation. 1985. http://bitsavers.trailing-edge.com/pdf/dec/vax/handbook/VMS_Information_Management_Handbook_1985.pdf. 
  127. Ian Smith (2004). "Rdb's First 20 Years: Memories and Highlights". http://www.oracle.com/technology/products/rdb/pdf/2003_tech_forums/13_rdbs_first_20_years.pdf. 
  128. "Compaq ACMS for OpenVMS Getting Started". Compaq. December 1999. http://odl.sysworks.biz/disk$vaxdocmar002/database/acms_v43/6621/6621pro_contents.html. 
  129. "Building Dependable Systems: The OpenVMS Approach". Digital Equipment Corporation. March 1994. https://support.hpe.com/hpesc/public/docDisplay?docId=c04622599. 
  130. "Cover Letter for DECADMIRE V2.1 MUP Kit - DECADMIRE V2.1A". Digital Equipment Corporation. 1995. http://h30266.www3.hpe.com/MasterIndex/cover_letter/cover_letter_0071573c.txt. [yes|permanent dead link|dead link}}]
  131. "Oracle Rdb Status and Direction". 2004. http://www.decus.de/slides/sy2004/21_04/2p06.pdf. 
  132. "Cover Letter re DSM". Compaq. May 31, 1999. http://h30266.www3.hpe.com/masterindex/cover_letter/cover_letter_013a1ce4.txt. [yes|permanent dead link|dead link}}]
  133. Neil Rieck (June 29, 2020). "OpenVMS Notes MySQL and MariaDB". http://www3.sympatico.ca/n.rieck/docs/openvms_notes_mysql_mariardb.html. 
  134. Bengt Gunne (2017). "Mimer SQL on OpenVMS Present and Future". http://www.vmsconsultancy.com/download/NL-VMSUpdate-2017/MimerSQL%20VMSSIG%20Holland.pdf. 
  135. "Mimer SQL is now available for OpenVMS on x86". Mimer Information Technology AB. 2023. https://developer.mimer.com/mimer-sql-is-now-available-for-openvms-on-x86/. 
  136. "Rocket Software System 1032". Rocket Software. https://www.rocketsoftware.com/products/rocket-m204/rocket-system-1032. 
  137. Stephen Hoffman; Paul Anagnostopoulos (1999). Writing Real Programs in DCL, second edition. Digital Press. ISBN 1-55558-191-9. 
  138. "Software Product Description HP DECforms for OpenVMS, Version 4.0". August 2006. http://h30266.www3.hpe.com/PDFs/HPFMS25.pdf. [yes|permanent dead link|dead link}}]
  139. "Software Product Description HP FMS for OpenVMS, Version 2.5". January 2005. http://h30266.www3.hpe.com/PDFs/SPDDecforms40.pdf. [yes|permanent dead link|dead link}}]
  140. "Compaq TDMS for OpenVMS VAX, Version 1.9B". July 2002. http://h30266.www3.hpe.com/PDFs/TDMSforVAXV19B.pdf. [yes|permanent dead link|dead link}}]
  141. "OpenVMS RTL Screen Management (SMG$) Manual". 2001. http://h30266.www3.hpe.com/odl/vax/opsys/vmsos73/vmsos73/5935/5935pro_contents.html. 
  142. Rick Spitz; Peter George; Stephen Zalewski (1986). "The Making of a Micro VAX Workstation". Digital Technical Journal 1 (2). http://www.bitsavers.org/pdf/dec/dtj/dtj_v01-02_mar1986.pdf. Retrieved October 21, 2021. 
  143. "MicroVMS Workstation Graphics Programming Guide". Digital Equipment Corporation. May 1986. http://www.bitsavers.org/pdf/dec/vax/vms/vms_workstation/AL-GI10B-TN_MicroVMS_Workstation_Graphics_Programming_Guide_May1986.pdf. 
  144. Fred Kleinsorge (January 4, 2007). "comp.os.vms - Dec VWS Internals". Newsgroupcomp.os.vms. Retrieved February 27, 2021.
  145. Scott A. McGregor (1990). "An Overview of the DECwindows Architecture". Digital Technical Journal (Digital Equipment Corporation) 2 (3). http://www.bitsavers.org/pdf/dec/dtj/dtj_v02-03_1990.pdf. Retrieved October 21, 2021. 
  146. 146.0 146.1 146.2 146.3 "(Open)VMS(/ VAX), Version overview". http://www.vaxmacro.de/vvo.html. 
  147. "Migrating VWS/UIS Applications to DECwindows?". HP OpenVMS ask the wizard. November 9, 2004. http://h41379.www4.hpe.com/wizard/wiz_9916.html. 
  148. Janet Dobbs (August 1989). "Strategies for Writing Graphical UNIX Applications Productively and Portably". AUUG Newsletter 10 (4): 50. https://www.tuhs.org/Archive/Documentation/AUUGN/AUUGN-V10.4.pdf. Retrieved December 29, 2021. 
  149. "Using DECwindows Motif for OpenVMS". October 2019. https://vmssoftware.com/docs/VSI_DECW_USER_GD.pdf. 
  150. S. Kadantsev; M. Mouat. "Early Experience With DECwindows/Motif In the TRIUMF Central Control System". 13th International Conference on Cyclotrons and their Applications. pp. 676–677. https://accelconf.web.cern.ch/accelconf/c92/papers/xi-11.pdf. Retrieved August 28, 2019. 
  151. "Getting Started With the New Desktop". Digital Equipment Corporation. May 1996. http://odl.sysworks.biz/disk$axpdocdec023/office/dwmot126/vmsdw126/gettingstarted/getting_started.html. 
  152. OpenGL Frequently Asked Questions (FAQ) [1/3]. Faqs.org. Retrieved on July 17, 2013.
  153. "Software Product Description VSI Graphical Kernel System". VSI. 2017. https://vmssoftware.com/docs/VSI_gks_spd.pdf. 
  154. "Software Product Description DEC PHIGS Version 3.1 for OpenVMS VAX". April 1995. http://h30266.www3.hpe.com/PDFs/DECPhigsV31forVAX.pdf. [yes|permanent dead link|dead link}}]
  155. "VSI OpenVMS Guide to System Security". VSI. December 2019. https://vmssoftware.com/docs/VSI_System_Security_Manual.pdf. 
  156. National Computer Security Center (NCSC) Trusted Product Evaluation List (TPEL)
  157. "HP OpenVMS Guide to System Security". Hewlett Packard. September 2003. https://support.hpe.com/hpesc/public/docDisplay?docId=emr_na-c04621379. 
  158. Green, James L.; Sisson, Patricia L. (June 1989). "The "Father Christmas" Worm". 12th National Computer Security Conference Proceedings. https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/19920019024.pdf. Retrieved November 23, 2015. 
  159. Kevin Rich (November 2004). "Security Audit on OpenVMS: An Internal Auditor's Perspective". SANS Institute. https://www.giac.org/paper/gsna/176/security-audit-openvms-internal-auditors-perspective/106696. 
  160. "DEFCON 16: Hacking OpenVMS". January 20, 2011. https://www.youtube.com/watch?v=Xf7gVma6_3g. 
  161. Stoll, Clifford (1989). The Cuckoo's Egg : tracking a spy through the maze of computer espionage (1st ed.). New York: Doubleday. ISBN 0-385-24946-2. 
  162. On the internal workings of the CTRL-Y mechanism, see: OpenVMS AXP Internals and Data Structures, Version 1.5, sections 30.6.5.1 (CTRL/Y Processing) and 30.6.5.4 (CONTINUE Command) at pp. 1074–1076.
  163. John Leyden (February 6, 2018). "Ghost in the DCL shell: OpenVMS, touted as ultra reliable, had a local root hole for 30 years". https://www.theregister.com/2018/02/06/openvms_vulnerability/. 
  164. Digital Equipment Corporation (1994). Software Product Description - POSIX for OpenVMS 2.0. 
  165. "OpenVMS Alpha Version 7.3-1 New Features and Documentation Overview Begin Index". June 2002. https://www.itec.suny.edu/scsys/vms/OVMSDOC0731/731final/6657/6657pro_008.html. [yes|permanent dead link|dead link}}]
  166. "VSI Products - GNV". https://vmssoftware.com/products/gnv/. 
  167. "ϕnix: a Unix emulator for VAX/VMS". August 10, 1987. https://www.caam.rice.edu/caam/trs/82/TR82-08.pdf. 
  168. "Compaq and DECUS expand Free License OpenVMS Hobbyist Program". Compaq. March 10, 1999. http://www.openvmshobbyist.com/openvms_history/hobbyist_history/hobbyist_faq/hobby.html. 
  169. "Hobbyist Program". http://www.process.com/resources/openvms/hobbyist.html. 
  170. "VMS Hardware". https://sourceforge.net/p/vms-ports/wiki/VMSHardware/. 
  171. "HPE sets end date for hobbyist licenses for OpenVMS". https://legacyos.org/hpe-sets-end-date-for-hobbyist-licenses-for-openvms/. 
  172. "VMS Software Announces Community License". April 22, 2020. https://vmssoftware.com/about/news/2020-04-22-vsi-announces-community-license/. 
  173. "VMS Software Community License Available". July 28, 2020. https://vmssoftware.com/about/news/2020-07-28-community-license/. 
  174. "VSI Announces Community License Updates". June 11, 2020. https://vmssoftware.com/about/news/2020-06-11-community-license-updates/. 
  175. "HP OpenVMS Systems - OpenVMS Release History". June 21, 2010. http://h41379.www4.hpe.com/openvms/os/openvms-release-history.html. 
  176. "OpenVMS – A guide to the strategy and roadmap". https://vmssoftware.com/about/roadmap/. 
  177. "HP OpenVMS Systems - Supported Software Versions - January 2014". http://h41379.www4.hpe.com/openvms/openvms_supportchart.html. 
  178. "VSI OpenVMS Software Roadmap 2021". https://vmssoftware.com/docs/VMS_Software_Roadmap_2021.pdf. 
  179. "OpenVMS Software Technical Support Service". Hewlett Packard. October 2003. ftp://ftp.hp.com/pub/services/software/info/ovms.pdf. [yes|permanent dead link|dead link}}]
  180. "OpenVMS Release History". HP. http://www.bitsavers.org/pdf/dec/vax/vms/openvms-release-history.txt. 
  181. 181.0 181.1 Andy Goldstein (September 16, 1997). "When Did VMS First Come Out?". Newsgroupcomp.os.vms. Retrieved March 5, 2022.
  182. 182.0 182.1 182.2 VAX/VMS Release Notes Version 1.5. DEC. February 1979. AA-D015B-TE. 
  183. VAX/VMS Release Notes Version 1.6. DEC. August 1979. AA-J039A-TE. 
  184. "VAX/VMS Release Notes Version 3.0". DEC. May 1982. http://www.bitsavers.org/pdf/dec/vax/vms/3.0/AA-D015D-TE_VAX-VMS_Release_Notes_V3.0_May82.pdf. 
  185. "VAX/VMS Internals and Data Structures". DEC. April 1981. http://www.bitsavers.org/pdf/dec/vax/vms/2.2/AA-K785A-TE_VAX_VMS_2.2_Internals_and_Data_Structures_Apr81.pdf. 
  186. "VAX-11 Information Directory and Index". DEC. May 1981. http://www.bitsavers.org/pdf/dec/vax/vms/2.3/AA-D016D-TE_VAX-11_2.3_Information_Directory_and_Index_May81.pdf. 
  187. "GRPNAM SECURITY HOLE IN LOGIN". DEC. http://www.skip.net/DEC/spr-grpnam.txt. 
  188. Bob Boyd (September 18, 1987). "First Introduction of BACKUP utility". Newsgroupcomp.os.vms. Retrieved February 6, 2022.
  189. VAX/VMS Release Notes Version 3.1. DEC. August 1982. AA-N472A-TE. 
  190. VAX/VMS Release Notes Version 3.2. DEC. December 1982. AA-P763A-TE. 
  191. VAX/VMS Release Notes Version 3.3. DEC. April 1983. AA-P764A-TE. 
  192. VAX/VMS Release Notes Version 3.4. DEC. June 1983. AA-P765A-TE. 
  193. VAX/VMS Release Notes Version 3.5. DEC. November 1983. AA-P766A-TE. 
  194. VAX/VMS Release Notes Version 3.6. DEC. April 1984. AA-V332A-TE. 
  195. VAX/VMS Release Notes Version 3.7. DEC. August 1984. AA-CJ33A-TE. 
  196. vms-source-listings
  197. vms-source-listings
  198. "Commitment to DII COE initiative provides longterm support and application portability for OpenVMS customers". https://h41379.www4.hpe.com/solutions/government/coe/. 
  199. "HP OpenVMS Systems - OpenVMS Version 8.4". http://h71000.www7.hp.com/openvms84_announce.html. 
  200. "VMS Software, Inc. Launches New Version of OpenVMS Operating System Worldwide" (PDF) (Press release). June 1, 2015. Archived from the original (PDF) on August 7, 2015. Retrieved June 4, 2015.
  201. "VMS Software, Inc. Launches New Version 8.4-2L1 of OpenVMS Operating System Worldwide". VSI (Press release). September 23, 2016. Retrieved May 4, 2021.
  202. "VMS Software, Inc. Launches VSI OpenVMS Alpha V8.4-2L1 for Alpha Hardware". VSI (Press release). January 27, 2017. Retrieved May 4, 2021.
  203. 203.0 203.1 "Roadmap Update". September 2020. https://vmssoftware.com/products/roadmap/. 
  204. "OpenVMS for x86 V9.0 EAK goes to first customer on May 15, 2020". April 24, 2020. https://vmssoftware.com/about/news/2020-04-24-openvms-for-x86-eak-goes-to-first-customer-on-may-15-2020/. 
  205. "VSI OpenVMS v9.2 Released". July 14, 2022. https://vmssoftware.com/about/news/2022-07-14-openvms-v92-for-x86-announced/. 
  206. "OpenVMS V9.2-1 Final Release". 2023-06-15. https://vmssoftware.com/about/news/2023-06-15-openvms-v9-2-1-release/. 

Further reading

External links