# OpenVMS

OpenVMS ist ein Betriebssystem, das ursprünglich vom Unternehmen Digital Equipment Corporation für seine VAX-Rechner entwickelt wurde. Es war zur Zeit der Erstveröffentlichung ein ausgesprochen fortschrittliches 32-Bit-Betriebssystem, das Mehrbenutzer- und Multitasking-fähig war. Es war zudem eines der ersten Betriebssysteme mit virtueller Speicherverwaltung. Dies begründet den ursprünglichen Namen Virtual Memory System, abgekürzt VMS. Heute ist OpenVMS in 64-Bit-Versionen für verschiedene Rechnerarchitekturen verfügbar und wird unter anderem in Hochverfügbarkeitsumgebungen eingesetzt.

## Geschichte

1977 wurde Version 1.0 veröffentlicht, von Beginn an stand mit DECnet bereits eine leistungsfähige Punkt-zu-Punkt-Verbindung zwischen Rechnern zur Verfügung. Unter Version 4 (ab 1983/84) wurden die ersten VAXcluster konfiguriert, die eine gemeinsame Systemfestplatte hatten. Gleichzeitig wurde DECnet Phase IV mit umfassender Ethernet-Unterstützung freigegeben. Ab Version 5 konnte es mit graphischen Oberflächen umgehen (DECwindows – OSF/Motif-kompatibel). Die zuletzt entwickelten Versionen 6.x aus dem Jahr 1994 hatten bereits Unterstützung für die als VAX-Nachfolger entwickelte 64-Bit-Prozessorarchitektur Alpha (diese Variante hieß AXP) sowie moderne Datenverarbeitung mit XML und LDAP. Noch heute sind viele der PDP-11-, VAX- und AlphaServer bei großen Unternehmen wie der Deutschen Börse, EADS oder FIAT im Einsatz.
DEC wurde 1998 von Compaq übernommen, das wiederum 2002 von Hewlett-Packard übernommen wurde. 1998 kaufte Robert Boers, einer der ehemaligen DEC-Manager, das DEC European Migration and Porting Center. Daraus entstand zunächst das Unternehmen Software Resources International, heute Stromasys. Das Unternehmen entwickelt Emulatoren für alte DEC-Server. Durch diese Technik kann OpenVMS als Betriebssystem auch ohne Upgrade beibehalten werden.
Es gibt eine auch heute noch aktive Community rund um das inzwischen OpenVMS genannte System. Neben VAX-Rechnern läuft es auch auf 64-Bit-Alpha-Maschinen, auf Intel-IA-64-Systemen und x86-64-Systemen.
OpenVMS ist in Version 8.4.2 (bzw. 9.2-1 für x86-64) verfügbar, gemischte Cluster von VAX-, Alpha- und Itanium-II-Systemen wurden demonstriert. Auf OpenVMS laufen im Mobilfunkbereich SMS-Lösungen, und im Bankenbereich werden unter OpenVMS Börsensysteme betrieben.
Noch vor der Übernahme durch Compaq hatte sich Digital gegenüber dem amerikanischen Verteidigungsministerium verpflichtet, VMS für weitere 20 Jahre zu unterstützen. Bisher ist nicht erkennbar, dass HP sich von dieser Verpflichtung zurückziehen will oder kann oder dass das Verteidigungsministerium nicht mehr auf der Einhaltung dieser Verpflichtung besteht. Eine wichtige Rolle spielt in diesem Zusammenhang sicher der Umstand, dass OpenVMS als Betriebssystem gilt, das vergleichsweise sicher vor äußeren Angriffen ist.
Für nicht-kommerzielle Anwendungen werden Lizenzen für OpenVMS und die wichtigsten Programme im Rahmen des OpenVMS Hobbyist Programs bereitgestellt (Voraussetzung ist die Mitgliedschaft in der HP-Benutzervereinigung Connect). Verfügt man nicht über die für OpenVMS benötigte Hardware, kann dank SIMH ein VAX-Rechner in Software simuliert werden. Auch für die AXP-Architektur gibt es kostenlose Emulatoren, zum Beispiel den Personal Alpha von Emulators International.
HP kündigte im Juni 2013 an, keine Portierung von VMS auf die eigenen Server der Reihe HP Integrity i4, die auf dem Itanium 9500 basieren, durchzuführen. Bisherige Systeme sollen bis 2015 verkauft werden und bis 2020 Support erhalten. Im Juli 2014 kündigten HP und VMS Software Inc. (VSI) an, dass VSI die Weiterentwicklung von OpenVMS in Lizenz betreiben wird. Diese Ankündigung wird von OpenVMS-Benutzergruppen als Wendepunkt betrachtet.

## Merkmale

Bisweilen wird OpenVMS fälschlicherweise den Unix-artigen Systemen zugerechnet. Doch OpenVMS hat mehr mit Windows NT gemeinsam als mit Unix. Verschiedene Konzepte, die heute in jedem aktuellen Windows-System angewendet werden, stammen ursprünglich aus VMS.
VMS unterscheidet weder bei Kommandozeilenargumenten noch bei Dateinamen im Dateisystem Files-11 zwischen Groß- und Kleinschreibung; allerdings kann man seit OpenVMS V7.3-1 ein Dateisystem case sensitive einrichten.
Im Gegensatz zu Unix werden Datenträger nicht als Verzeichnis unterhalb eines globalen Stammverzeichnisses eingebunden, stattdessen gibt es – grob ähnlich wie bei MS-DOS und Windows – Laufwerksbezeichnungen. Die Bezeichnungen von Devices sind zum Teil von der verwendeten Hardware abhängig (z. B. $1$DGA4711), zum Teil können sie frei gewählt werden (z. B. DSA815, ein ShadowSet mit frei wählbarer Nummer 815).
Dateinamen bestehen aus Namen, Datei-Typ und Versionsnummer (z. B. NAME.TYP;1), NAME und TYP sind jeweils Ketten von bis zu 39 alphanumerischen Zeichen. Geänderte Dateien werden als eine neue Version gespeichert, die sich in einer inkrementierenden Versionsnummer nach einem Semikolon im Dateinamen unterscheidet (NAME.TYP;1 → NAME.TYP;2), später von ISO 9660 übernommen. Die ältere Version wird vom System nicht gelöscht, dies kann der Benutzer mit den DELETE- oder PURGE-Befehlen bedarfsweise tun. Die maximal mögliche Versionsnummer ist 32767. Ist diese erreicht, kann keine neue Version der Datei mehr angelegt werden. Ein Aufräumen und Umbenennen ist selbstverständlich möglich.
Verzeichnisnamen werden durch einen „.“ getrennt und können, in „[ ]“ oder „< >“ eingefügt, hinter einem eventuellen Laufwerksbezeichner dem Dateinamen vorangestellt werden. Ein Unterverzeichnis-Eintrag ist vom Typ „.DIR“ und hat in einem intakten Dateisystem immer die Versionsnummer „;1“. Als Bezeichner können bis zu 39 alphanumerische Zeichen verwendet werden.
Eine vollständige Dateibezeichnung lautet: KNOTEN"Accountname Passwort"::Gerät:[Verzeichnis.Unterverzeichnis. ... ]Dateiname.Typ;Version, wobei KNOTEN den Rechnernamen im Netzwerk und Gerät (maximal 255 alphanumerische Zeichen) den physikalischen Ort (Platte, Band, ...) bezeichnen.
Hochverfügbarkeitstechniken wie Clustering wurden in VMS schon frühzeitig implementiert, heute noch laufen zahlreiche Anwendungen, bei denen es auf hohe Verfügbarkeit ankommt, unter diesem Betriebssystem.
Als Kommandozeileninterpreter und Skriptsprache steht die Digital Command Language (DCL) zur Verfügung. Kommandos werden nach Konvention in Großbuchstaben angegeben, wie beispielsweise SHOW (Informationen über Datum, eingeloggte Nutzer, freier Speicherplatz), RECALL, DIR und HELP.
Die Entwickler von VMS übernahmen Konzepte von den PDP-Systemen RSTS/E, RT-11 und RSX-11, welche in den 1970er Jahren an amerikanischen Universitäten und weltweiten Forschungseinrichtungen weit verbreitet waren.
Als grafische Oberfläche wurde ab Version 5 standardmäßig DECwindows angeboten. Es ist ein auf CDE aufbauendes Fenstersystem. X11 und CDE selbst kann als Alternative zu DECwindows auch auf OpenVMS eingesetzt werden.

## FreeVMS

2010 bis 2013 wurde daran gearbeitet, ein quelloffenes VMS-System mit dem Namen FreeVMS zu entwickeln, das auch auf anderen Hardware-Plattformen als DEC Alpha und IA-64 nutzbar sein sollte. Die Entwicklung befindet sich immer noch in einem sehr frühen Stadium. Als Basis diente bis zur Version 0.3.15 ein modifizierter monolithischer Linux-Kernel. Die Version 0.4 nutzt einen L4/X2-Mikrokernel.