Впервые он был анонсирован корпорацией Digital Equipment Corporation (DEC) как VAX/VMS ( Virtual Address eXtension/Virtual Memory System [16] ) вместе с мини-компьютером VAX-11/780 в 1977 году. [17] [18] [19] Впоследствии OpenVMS был портирован для работы на системах DEC Alpha , серверах HPE Integrity на базе Itanium [20] и некоторых аппаратных средствах и гипервизорах x86-64 . [21] С 2014 года OpenVMS разрабатывается и поддерживается компанией VMS Software Inc. (VSI). [22] [23] OpenVMS обеспечивает высокую доступность за счет кластеризации — возможности распределять систему по нескольким физическим машинам. [24] Это позволяет кластеризованным приложениям и данным оставаться постоянно доступными во время выполнения обслуживания и обновлений программного обеспечения и оборудования операционной системы [25] или в случае разрушения части кластера. [26] Сообщалось о времени безотказной работы кластера VMS в 17 лет. [27]
История
Происхождение и изменение имени
В апреле 1975 года компания Digital Equipment Corporation приступила к проекту по разработке 32-разрядного расширения для своей линейки компьютеров PDP-11 . Аппаратный компонент имел кодовое название Star ; операционная система имела кодовое название Starlet . Роджер Гурд был руководителем проекта VMS. Инженеры-программисты Дэйв Катлер , Дик Хастведт и Питер Липман выступали в качестве технических руководителей проекта. [28] Проекты Star и Starlet достигли кульминации в компьютере VAX-11/780 и операционной системе VAX/VMS. Кодовое название проекта Starlet сохранилось в VMS в названии нескольких системных библиотек, включая STARLET.OLBи STARLET.MLB. [29] VMS в основном была написана на VAX MACRO с некоторыми компонентами, написанными на BLISS . [9]
Одной из первоначальных целей VMS была обратная совместимость с существующей операционной системой RSX-11M компании DEC . [9] До выпуска V3.0 VAX/VMS включал в себя слой совместимости под названием RSX Application Migration Executive (RSX AME), который позволял запускать программное обеспечение пользовательского режима RSX-11M без изменений поверх VMS. [30] RSX AME играл важную роль в ранних версиях VAX/VMS, которые использовали определенные утилиты пользовательского режима RSX-11M до разработки собственных версий VAX. [9] К выпуску V3.0 все утилиты режима совместимости были заменены собственными реализациями. [31] В VAX/VMS V4.0 RSX AME был удален из базовой системы и заменен дополнительным многоуровневым продуктом под названием VAX-11 RSX . [32]
Было создано несколько дистрибутивов VAX/VMS:
MicroVMS был дистрибутивом VAX/VMS, разработанным для оборудования MicroVAX и VAXstation , которое имело меньше памяти и дискового пространства, чем более крупные системы VAX того времени. [35] MicroVMS разделил VAX/VMS на несколько комплектов, которые клиент мог использовать для установки подмножества VAX/VMS, адаптированного под его конкретные требования. [36] Выпуски MicroVMS выпускались для каждого выпуска VAX/VMS V4.x и были прекращены с выпуском VAX/VMS V5.0. [37] [38]
Desktop-VMS был недолговечным дистрибутивом VAX/VMS, продаваемым с системами VAXstation . Он состоял из одного CD-ROM, содержащего комплект VMS, DECwindows, DECnet, поддержку VAXcluster и процесс установки, разработанный для нетехнических пользователей. [39] [40] Desktop-VMS можно было запустить непосредственно с CD или установить на жесткий диск. [41] Desktop-VMS имел собственную схему версий, начиная с V1.0, что соответствовало выпускам V5.x VMS. [42]
Неофициальная производная от VAX/VMS под названием MOS VP ( мос ВП , букв. « Многофункциональная операционная система с виртуальной памятью») [43] была создана в Советском Союзе в 1980-х годах для SM 1700. линейка оборудования-клонов VAX. [44] [45] Вице-президент МОС добавил поддержку кириллицы и перевел части пользовательского интерфейса на русский язык. [46] Также были созданы аналогичные производные MicroVMS, известные как МикроМОС ВП ( русский : МикроМОС ВП ) или МОС-32М ( русский : МОС-32М ).
С выпуском V5.0 в апреле 1988 года DEC начала называть VAX/VMS просто VMS в своей документации. [47] В июле 1992 года [48] DEC переименовала VAX/VMS в OpenVMS в знак поддержки стандартов индустрии открытых систем , таких как совместимость с POSIX и Unix , [49] и для отказа от соединения с VAX, поскольку осуществлялся переход на другую архитектуру. Название OpenVMS впервые было использовано в выпуске OpenVMS AXP V1.0 в ноябре 1992 года. DEC начала использовать название OpenVMS VAX с выпуском V6.0 в июне 1993 года. [50]
Порт в Альфу
В 1980-х годах DEC планировала заменить платформу VAX и операционную систему VMS на архитектуру PRISM и операционную систему MICA . [52] Когда эти проекты были отменены в 1988 году, была создана команда для разработки новых систем VAX/VMS, производительность которых была бы сопоставима с производительностью систем Unix на базе RISC . [53] После ряда неудачных попыток разработать более быстрый процессор, совместимый с VAX, группа продемонстрировала возможность переноса VMS и ее приложений на архитектуру RISC на базе PRISM. [54] Это привело к созданию архитектуры Alpha . [55] Проект по переносу VMS на Alpha начался в 1989 году и впервые был запущен на прототипе Alpha Demonstration Unit на базе Alpha EV3 в начале 1991 года. [54] [56]
Основная проблема при переносе VMS на новую архитектуру заключалась в том, что VMS и VAX были разработаны вместе, а это означало, что VMS зависела от определенных деталей архитектуры VAX. [57] Кроме того, значительная часть ядра VMS, многоуровневых продуктов и разработанных заказчиком приложений была реализована в ассемблерном коде VAX MACRO . [9] Некоторые из изменений, необходимых для отделения VMS от архитектуры VAX, включали создание компилятора MACRO-32 , который рассматривал VAX MACRO как язык высокого уровня и компилировал его в объектный код Alpha , [58] и эмуляцию определенных низкоуровневых деталей архитектуры VAX в PALcode , таких как обработка прерываний и инструкции атомарной очереди.
Портирование VMS на Alpha привело к созданию двух отдельных кодовых баз: одной для VAX и другой для Alpha. [4] Библиотека кода Alpha была основана на снимке кодовой базы VAX/VMS около V5.4-2. [59] В 1992 году была выпущена первая версия OpenVMS для систем Alpha AXP , обозначенная как OpenVMS AXP V1.0 . В 1994 году с выпуском OpenVMS V6.1 был достигнут паритет функций (и номеров версий) между вариантами VAX и Alpha; это был так называемый выпуск Functional Equivalence. [59] Решение использовать поток нумерации версий 1.x для предпроизводственных качественных релизов OpenVMS AXP смутило некоторых клиентов и не было повторено в последующих портах OpenVMS на новые платформы. [57]
Когда VMS была портирована на Alpha, она изначально была оставлена как 32-битная операционная система. [58] Это было сделано для обеспечения обратной совместимости с программным обеспечением, написанным для 32-битной VAX. 64-битная адресация была впервые добавлена для Alpha в выпуске V7.0. [60] Для того чтобы 64-битный код мог взаимодействовать со старым 32-битным кодом, OpenVMS не создает различий между 32-битными и 64-битными исполняемыми файлами, а вместо этого позволяет использовать как 32-битные, так и 64-битные указатели в одном и том же коде. [61] Это известно как поддержка смешанных указателей. 64-битные выпуски OpenVMS Alpha поддерживают максимальный размер виртуального адресного пространства 8 ТиБ (43-битное адресное пространство), что является максимальным размером, поддерживаемым Alpha 21064 и Alpha 21164. [ 62]
Одной из наиболее примечательных функций OpenVMS, доступных только в Alpha, была OpenVMS Galaxy , которая позволяла разбить один SMP-сервер на разделы для запуска нескольких экземпляров OpenVMS. Galaxy поддерживала динамическое распределение ресурсов для работающих разделов и возможность совместного использования памяти между разделами. [ 63] [64]
Порт на Intel Itanium
В 2001 году, до приобретения компанией Hewlett-Packard , Compaq объявила о переносе OpenVMS на архитектуру Intel Itanium . [65] Перенос на Itanium стал результатом решения Compaq прекратить дальнейшую разработку архитектуры Alpha в пользу принятия новой на тот момент архитектуры Itanium. [66] Перенос начался в конце 2001 года, а первая загрузка состоялась 31 января 2003 года. [67] Первая загрузка состояла из загрузки минимальной конфигурации системы на рабочей станции HP i2000 , входа в систему как SYSTEMпользователь и запуска DIRECTORYкоманды. Перенос OpenVMS на Itanium поддерживает определенные модели и конфигурации серверов HPE Integrity . [10] Первоначально выпуски Itanium назывались HP OpenVMS Industry Standard 64 for Integrity Servers , хотя названия OpenVMS I64 или OpenVMS for Integrity Servers используются чаще. [68]
Порт Itanium был выполнен с использованием исходного кода, поддерживаемого в общем исходном коде библиотеки OpenVMS Alpha, с добавлением условного кода и дополнительных модулей, где требовались изменения, специфичные для Itanium. [57] Это потребовало замены определенных архитектурных зависимостей OpenVMS или их эмуляции в программном обеспечении. Некоторые из изменений включали использование расширяемого интерфейса прошивки (EFI) для загрузки операционной системы, [69] повторную реализацию функциональности, ранее предоставленной Alpha PALcode внутри ядра, [70] использование новых форматов исполняемых файлов ( Executable and Linkable Format и DWARF ), [71] и принятие IEEE 754 в качестве формата с плавающей точкой по умолчанию. [72]
Как и в случае с портом VAX на Alpha, был доступен двоичный транслятор для Alpha на Itanium, позволяющий портировать программное обеспечение OpenVMS Alpha пользовательского режима на Itanium в ситуациях, когда невозможно было перекомпилировать исходный код. Этот транслятор известен как Alpha Environment Software Translator (AEST), и он также поддерживал трансляцию исполняемых файлов VAX, которые уже были транслированы с помощью VEST. [73]
Два предварительных выпуска, OpenVMS I64 V8.0 и V8.1, были доступны 30 июня 2003 года и 18 декабря 2003 года. Эти выпуски были предназначены для организаций HP и сторонних поставщиков, занимающихся портированием пакетов программного обеспечения на OpenVMS I64. Первый производственный выпуск, V8.2, был выпущен в феврале 2005 года. V8.2 также был выпущен для Alpha; последующие выпуски V8.x OpenVMS сохранили паритет функций между архитектурами Alpha и Itanium. [74]
Порт на x86-64
Когда VMS Software Inc. (VSI) объявила о получении прав на разработку операционной системы OpenVMS от HP, они также объявили о своем намерении перенести OpenVMS на архитектуру x86-64 . [75] Работа по переносу велась одновременно с созданием компании, а также разработкой собственных версий OpenVMS V8.4-x для Itanium и Alpha от VSI.
Порт x86-64 предназначен для определенных серверов от HPE и Dell , а также для определенных гипервизоров виртуальных машин . [76] Первоначальная поддержка была нацелена на KVM и VirtualBox . Поддержка VMware была объявлена в 2020 году, а Hyper-V изучается в качестве будущей цели. [77] В 2021 году порт x86-64 был продемонстрирован работающим на одноплатном компьютере на базе Intel Atom . [78]
Как и в случае с портами Alpha и Itanium, порт x86-64 внес некоторые изменения для упрощения портирования и поддержки OpenVMS на новой платформе, включая: замену фирменного бэкэнда компилятора GEM, используемого компиляторами VMS, на LLVM , [79] изменение процесса загрузки таким образом, чтобы OpenVMS загружалась с диска памяти, [80] и имитация четырех уровней привилегий OpenVMS в программном обеспечении, поскольку только два из уровней привилегий x86-64 могут использоваться OpenVMS. [70]
Первая загрузка была анонсирована 14 мая 2019 года. Она включала загрузку OpenVMS на VirtualBox и успешное выполнение DIRECTORYкоманды. [81] В мае 2020 года релиз V9.0 Early Adopter's Kit стал доступен небольшому числу клиентов. Он состоял из операционной системы OpenVMS, работающей на виртуальной машине VirtualBox с определенными ограничениями; что наиболее важно, было доступно несколько многоуровневых продуктов, а код можно было скомпилировать только для x86-64 с помощью кросс-компиляторов, которые работают на системах OpenVMS на базе Itanium. [21] После выпуска V9.0 VSI ежемесячно или раз в два месяца выпускала серию обновлений, которые добавляли дополнительную функциональность и поддержку гипервизора. Они были обозначены как V9.0-A — V9.0-H. [82] В июне 2021 года VSI выпустила полевой тест V9.1, сделав его доступным для клиентов и партнеров VSI. [83] V9.1 поставляется в виде образа ISO , который можно установить на различные гипервизоры и на серверы HPE ProLiant DL380, начиная с версии V9.1-A. [84]
Влияние
В 1980-х годах операционная система MICA для архитектуры PRISM должна была стать конечным преемником VMS. MICA была разработана для поддержания обратной совместимости с приложениями VMS, а также для поддержки приложений Ultrix поверх того же ядра. [85] MICA в конечном итоге была отменена вместе с остальной частью платформы PRISM, что привело к тому, что Дэйв Катлер покинул DEC и перешел в Microsoft. В Microsoft Катлер руководил созданием операционной системы Windows NT , которая была в значительной степени вдохновлена архитектурой MICA. [86] В результате VMS считается предком Windows NT , вместе с RSX-11 , VAXELN и MICA, и между VMS и NT существует много общего. [87]
Ныне несуществующий проект FreeVMS пытался разработать операционную систему с открытым исходным кодом, следуя соглашениям VMS. [88] [89] FreeVMS была построена на основе микроядра L4 и поддерживала архитектуру x86-64 . Предыдущая работа по исследованию внедрения VMS с использованием архитектуры на основе микроядра ранее была предпринята в качестве прототипного упражнения сотрудниками DEC при содействии Университета Карнеги-Меллона с использованием микроядра Mach 3.0, портированного на оборудование VAXstation 3100 , с принятием многосерверной архитектурной модели. [90]
Архитектура
Операционная система OpenVMS имеет многоуровневую архитектуру, состоящую из привилегированного Executive , промежуточно привилегированного Command Language Interpreter и непривилегированных утилит и библиотек времени выполнения (RTL). [91] Непривилегированный код обычно вызывает функциональность Executive через системные службы (эквивалентно системным вызовам в других операционных системах).
Уровни и механизмы OpenVMS построены вокруг определенных особенностей архитектуры VAX, включая: [91] [92]
Наличие четырех режимов доступа к процессору (называемых Kernel , Executive , Supervisor и User , в порядке убывания привилегий). Каждый режим имеет свой собственный стек, и каждая страница памяти может иметь защиту памяти, указанную для каждого режима.
Виртуальное адресное пространство , разделенное на секции частного пространства процесса и секции системного пространства, общие для всех процессов.
Эти механизмы архитектуры VAX реализованы на Alpha, Itanium и x86-64 либо путем сопоставления с соответствующими аппаратными механизмами на этих архитектурах, либо посредством эмуляции (через PALcode на Alpha или в программном обеспечении на Itanium и x86-64). [70]
Исполнительный и Ядро
OpenVMS Executive включает в себя привилегированный код и структуры данных, которые находятся в системном пространстве. Исполнитель далее подразделяется на Ядро , которое состоит из кода, который работает в режиме доступа ядра, и менее привилегированный код вне Ядра, который работает в режиме доступа исполнительного. [91]
Компоненты Executive, работающие в режиме доступа Executive, включают Record Management Services и некоторые системные службы, такие как активация образа. Главное различие между режимами доступа ядра и Executive заключается в том, что большинство основных структур данных операционной системы могут быть прочитаны из режима Executive, но требуют записи в режиме ядра. [92] Код, работающий в режиме Executive, может переключаться в режим ядра по желанию, что означает, что барьер между режимами ядра и Executive предназначен для защиты от случайного повреждения, а не для механизма безопасности. [93]
Ядро включает в себя основные структуры данных операционной системы (например, таблицы страниц, базу данных ввода-вывода и данные планирования), а также процедуры, которые работают с этими структурами. Ядро обычно описывается как имеющее три основные подсистемы: ввод-вывод, управление процессами и временем, управление памятью. [ 91] [92] Кроме того, внутри ядра реализованы другие функции, такие как управление логическими именами , синхронизация и диспетчеризация системных служб.
OpenVMS позволяет коду пользовательского режима с подходящими привилегиями переключаться в режим исполнительной системы или ядра с помощью системных служб $CMEXECи $CMKRNLсоответственно. [94] Это позволяет коду вне системного пространства иметь прямой доступ к процедурам исполнительной системы и системным службам. Помимо разрешения сторонних расширений для операционной системы, привилегированные образы используются основными утилитами операционной системы для манипулирования структурами данных операционной системы через недокументированные интерфейсы. [95]
Файловая система
Типичным пользовательским и прикладным интерфейсом в файловой системе является Record Management Services (RMS), хотя приложения могут напрямую взаимодействовать с базовой файловой системой через системные службы QIO . [96] Файловые системы, поддерживаемые VMS, называются Files-11 On-Disk Structures (ODS), наиболее значимыми из которых являются ODS-2 и ODS-5 . [97] VMS также может получать доступ к файлам на CD-ROM ISO 9660 и магнитной ленте с метками ANSI . [98]
Files-11 ограничен томами в 2 ТиБ. [97] DEC попыталась заменить его файловой системой со структурой журнала под названием Spiralog, впервые выпущенной в 1995 году. [99] Однако поддержка Spiralog была прекращена из-за различных проблем, включая проблемы с обработкой полных томов. [100] Вместо этого обсуждался перенос файловой системы с открытым исходным кодом GFS2 на OpenVMS. [101]
В отличие от оболочек Unix , которые обычно работают в своем собственном изолированном процессе и ведут себя как любая другая программа пользовательского режима, интерфейсы командной строки OpenVMS являются необязательным компонентом процесса, существующим вместе с любым исполняемым образом, который может запустить этот процесс. [103] В то время как оболочка Unix обычно запускает исполняемые файлы, создавая отдельный процесс с помощью fork-exec , интерфейс командной строки OpenVMS обычно загружает исполняемый образ в тот же процесс, передает управление образу и обеспечивает передачу управления обратно в интерфейс командной строки после выхода из образа и возврата процесса в исходное состояние. [91]
Поскольку CLI загружается в то же адресное пространство, что и пользовательский код, и CLI отвечает за вызов активации образа и выполнения образа, CLI отображается в адресное пространство процесса в режиме доступа супервизора, более высоком уровне привилегий, чем большинство пользовательского кода. Это делается для того, чтобы предотвратить случайную или злонамеренную манипуляцию кодом CLI и структурами данных кодом пользовательского режима. [91] [103]
Функции
Кластеризация
OpenVMS поддерживает кластеризацию (сначала называемую VAXcluster , а позже VMScluster ), где несколько компьютеров запускают свой собственный экземпляр операционной системы. Кластеризованные компьютеры (узлы) могут быть полностью независимы друг от друга или могут совместно использовать такие устройства, как дисководы и принтеры. Связь между узлами обеспечивает единую абстракцию образа системы . [104] Узлы могут быть подключены друг к другу через фирменное аппаратное соединение, называемое Cluster Interconnect, или через стандартную локальную сеть Ethernet .
OpenVMS поддерживает до 96 узлов в одном кластере. Он также позволяет использовать кластеры со смешанной архитектурой. [24] Кластеры OpenVMS позволяют приложениям работать во время запланированных или незапланированных отключений. [105] Запланированные отключения включают обновления оборудования и программного обеспечения. [106]
Нетворкинг
Пакет протоколов DECnet тесно интегрирован в VMS, что позволяет осуществлять удаленный вход в систему, а также прозрачный доступ к файлам, принтерам и другим ресурсам в системах VMS по сети. [107] VAX/VMS V1.0 поддерживает DECnet Phase II, [108] а современные версии VMS поддерживают как традиционный протокол DECnet Phase IV, так и совместимый с OSI Phase V (также известный как DECnet-Plus ). [109] Поддержка TCP/IP обеспечивается дополнительными службами TCP/IP для многоуровневого продукта OpenVMS (первоначально известного как VMS/ULTRIX Connection , затем как ULTRIX Communications Extensions или UCX). [110] [111] Службы TCP/IP основаны на порте сетевого стека BSD в OpenVMS, [112] а также поддерживают такие распространенные протоколы, как SSH , DHCP , FTP и SMTP .
DEC продала программный пакет PATHWORKS (первоначально известный как Personal Computer Systems Architecture или PCSA), который позволял персональным компьютерам под управлением MS-DOS , Microsoft Windows или OS/2 , или Apple Macintosh служить терминалом для систем VMS или использовать системы VMS в качестве файлового или принт-сервера. [113] Позднее PATHWORKS был переименован в Advanced Server for OpenVMS и в конечном итоге был заменен портом VMS Samba во время порта Itanium. [114]
DEC предоставила протокол Local Area Transport (LAT), который позволял подключать удаленные терминалы и принтеры к системе VMS через терминальный сервер, такой как один из семейства DECserver . [115]
Программирование
DEC (и ее компании-преемники) предоставили широкий спектр языков программирования для VMS. Официально поддерживаемые языки в VMS, как текущие, так и исторические, включают: [116] [117]
Среди примечательных особенностей OpenVMS — Common Language Environment , строго определенный стандарт, который определяет соглашения о вызовах для функций и процедур, включая использование стеков , регистров и т. д., независимо от языка программирования. [118] Благодаря этому можно вызывать процедуру, написанную на одном языке (например, Fortran), из другого (например, COBOL), без необходимости знать детали реализации целевого языка. Сама OpenVMS реализована на множестве различных языков, а среда Common Language и стандарт вызовов поддерживают свободное смешивание этих языков. [119] DEC создала инструмент под названием Structure Definition Language (SDL), который позволяет генерировать определения типов данных для разных языков из общего определения. [120]
Инструменты разработки
DEC предоставила набор инструментов разработки программного обеспечения в виде многоуровневого продукта под названием DECset (первоначально называвшегося VAXset ). [116] Он состоял из следующих инструментов: [121]
Отладчик OpenVMS поддерживает все компиляторы DEC и многие сторонние языки. Он позволяет использовать точки останова, точки наблюдения и интерактивную отладку исполняемых программ с использованием командной строки или графического пользовательского интерфейса . [123] Пара отладчиков более низкого уровня, называемых DELTA и XDELTA , может использоваться для отладки привилегированного кода в дополнение к обычному коду приложения. [124]
DEC создала ряд дополнительных продуктов баз данных для VMS, некоторые из которых продавались как семейство VAX Information Architecture . [126] Эти продукты включали:
Rdb – система реляционной базы данных , которая изначально использовала фирменный интерфейс запросов Relational Data Operator (RDO), но позже получила поддержку SQL . [127]
СУБД – система управления базами данных, использующая сетевую модель CODASYL и язык манипулирования данными (DML).
Common Data Dictionary (CDD) — центральный репозиторий схем баз данных , позволяющий совместно использовать схемы между различными приложениями и генерировать определения данных для различных языков программирования.
DATATRIEVE – инструмент запросов и отчетов, который может получать доступ к данным из файлов RMS, а также баз данных Rdb и DBMS.
Application Control Management System (ACMS) – монитор обработки транзакций , который позволяет создавать приложения с использованием языка описания задач высокого уровня (TDL). Отдельные шаги транзакции могут быть реализованы с использованием команд DCL или процедур Common Language Environment. Пользовательские интерфейсы могут быть реализованы с использованием TDMS, DECforms или продукта автоматизации офиса ALL-IN-1 от Digital . [128]
В 1994 году DEC продала Rdb, DBMS и CDD компании Oracle , где они продолжают активно разрабатываться. [131] В 1995 году DEC продала DSM компании InterSystems , которая переименовала его в Open M и в конечном итоге заменила его своим продуктом Caché . [132]
VMS изначально была разработана для использования и управления в интерактивном режиме с использованием текстовых видеотерминалов DEC , таких как VT100 , или терминалов с печатными копиями, таких как серия DECwriter . С момента появления линейки VAXstation в 1984 году VMS опционально поддерживала графические пользовательские интерфейсы для использования с рабочими станциями или X-терминалами, такими как серия VT1000 .
Текстовые пользовательские интерфейсы
DIGITAL Command Language (DCL) служил основным интерпретатором командного языка (CLI) OpenVMS с момента первого выпуска. [137] [30] [10] Другие официальные CLI, доступные для VMS, включают RSX-11 Monitor Console Routine (MCR) (только VAX) и различные оболочки Unix . [116] DEC предоставила инструменты для создания текстовых приложений пользовательского интерфейса — Form Management System (FMS) и Terminal Data Management System (TDMS), позже замененные DECforms . [138] [139] [140] Также существует интерфейс более низкого уровня, называемый Screen Management Services (SMG$), сопоставимый с Unix curses . [141]
Графические пользовательские интерфейсы
За прошедшие годы VMS претерпела ряд различных графических инструментов и интерфейсов:
Первоначальный графический пользовательский интерфейс для VMS представлял собой фирменную оконную систему , известную как VMS Workstation Software (VWS), которая была впервые выпущена для VAXstation I в 1984 году. [142] Она предоставляла API, называемый User Interface Services (UIS). [143] Она работала на ограниченном наборе оборудования VAX. [144]
В 1989 году DEC заменила VWS новой оконной системой на базе X11 под названием DECwindows . [145] Впервые она была включена в VAX/VMS V5.1. [146] Ранние версии DECwindows имели интерфейс, построенный поверх фирменного инструментария под названием X User Interface (XUI). Был предоставлен многоуровневый продукт под названием UISX, позволяющий приложениям VWS/UIS работать поверх DECwindows. [147] Части XUI впоследствии использовались Open Software Foundation в качестве основы инструментария Motif . [148]
В 1991 году DEC заменила XUI на набор инструментов Motif, создав DECwindows Motif . [149] [150] В результате оконный менеджер Motif стал интерфейсом DECwindows по умолчанию в OpenVMS V6.0, [146] хотя оконный менеджер XUI остался в качестве опции.
В 1996 году, как часть OpenVMS V7.1, [146] DEC выпустила интерфейс New Desktop для DECwindows Motif, основанный на Common Desktop Environment (CDE). [151] В системах Alpha и Itanium по-прежнему можно выбрать старый пользовательский интерфейс на основе MWM (называемый «DECwindows Desktop») во время входа в систему. New Desktop никогда не был портирован в VAX-релизы OpenVMS.
Версии VMS, работавшие на рабочих станциях DEC Alpha в 1990-х годах, поддерживали графические адаптеры OpenGL [152] и Accelerated Graphics Port (AGP). VMS также обеспечивает поддержку старых графических стандартов, таких как GKS и PHIGS . [153] [154] Современные версии DECwindows основаны на X.Org Server . [10]
Безопасность
OpenVMS предоставляет различные функции и механизмы безопасности, включая идентификаторы безопасности, идентификаторы ресурсов, идентификаторы подсистем, списки контроля доступа , обнаружение вторжений и подробный аудит безопасности и оповещения. [155] Определенные версии оценены по критериям оценки доверенных компьютерных систем класса C2, а с выпуском SEVMS с улучшенной безопасностью — по классу B1. [156] OpenVMS также имеет рейтинг ITSEC E3 (см. NCSC и Common Criteria ). [157] Пароли хешируются с использованием полинома Перди .
Уязвимости
Ранние версии VMS включали ряд привилегированных учетных записей пользователей (включая SYSTEM, FIELD, SYSTESTи DECNET) с паролями по умолчанию, которые системные администраторы часто оставляли неизменными. [158] [159] Ряд компьютерных червей для VMS, включая червя WANK и червя Father Christmas, использовали эти пароли по умолчанию для получения доступа к узлам в сетях DECnet. [160] Эта проблема также была описана Клиффордом Столлом в книге «Яйцо кукушки» как средство, с помощью которого Маркус Хесс получил несанкционированный доступ к системам VAX/VMS. [161] В версии 5.0 пароли по умолчанию были удалены, и стало обязательным предоставлять пароли для этих учетных записей во время настройки системы. [38]
33-летняя уязвимость в VMS на VAX и Alpha была обнаружена в 2017 году и ей был присвоен идентификатор CVE CVE - 2017-17482. На затронутых платформах эта уязвимость позволяла злоумышленнику с доступом к командной строке DCL проводить атаку с повышением привилегий . Уязвимость основана на эксплуатации ошибки переполнения буфера в коде обработки команд DCL, возможности пользователя прервать работающий образ ( исполняемый файл программы ) с помощью CTRL/Yи вернуться к приглашению DCL, а также на том факте, что DCL сохраняет привилегии прерванного образа. [162] Ошибка переполнения буфера позволяла выполнять шелл-код с привилегиями прерванного образа. Это можно было использовать в сочетании с образом, установленным с более высокими привилегиями, чем учетная запись злоумышленника, для обхода безопасности системы. [163]
Совместимость с POSIX
Для VMS были созданы различные официальные уровни совместимости с Unix и POSIX . Первым из них был DEC/Shell , который был многоуровневым продуктом, состоящим из портов оболочки Bourne из версии 7 Unix и нескольких других утилит Unix для VAX/VMS. [116] В 1992 году DEC выпустила многоуровневый продукт POSIX для OpenVMS , который включал оболочку на основе KornShell . [164] Позднее POSIX для OpenVMS был заменен проектом с открытым исходным кодом GNV ( GNU , а не VMS), который впервые был включен в среду OpenVMS в 2002 году. [165] Среди других инструментов GNU, GNV включает порт оболочки Bash для VMS. [166] Примерами сторонних уровней совместимости с Unix для VMS являются Eunice . [167]
Программы для любителей
В 1997 году OpenVMS и ряд многоуровневых продуктов стали доступны бесплатно для любительского некоммерческого использования в рамках программы OpenVMS Hobbyist Program . [168] С тех пор несколько компаний, производящих программное обеспечение OpenVMS, сделали свои продукты доступными на тех же условиях, например, Process Software. [169] До порта x86-64 возраст и стоимость оборудования, способного запускать OpenVMS, сделали эмуляторы , такие как SIMH, распространенным выбором для любительских установок. [170]
В марте 2020 года HPE объявила о завершении программы OpenVMS Hobbyist. [171] За этим последовало объявление VSI о программе лицензирования сообщества (CLP) в апреле 2020 года, которая была задумана как замена программы HPE Hobbyist. [172] CLP была запущена в июле 2020 года и предоставляет лицензии на выпуски VSI OpenVMS на системах Alpha, Integrity и x86-64. [ 173] OpenVMS для VAX не покрывается CLP, поскольку выпусков VSI OpenVMS VAX нет, а старые версии по-прежнему принадлежат HPE. [174]
История релизов
^ X0.5 также был известен как «Базовый уровень 5». [181]
↑ Хотя точная дата выпуска неизвестна, даты журнала изменений V1.01 в примечаниях к выпуску V1.5 предполагают, что он был выпущен где-то после ноября 1978 года. [182]
^ Для некоторых ранних выпусков VAX/VMS, официальная дата выпуска которых неизвестна, дата, указанная в примечаниях к выпуску, использовалась приблизительно.
^ Существование версий V2.0 — V2.5 задокументировано в примечаниях к выпуску V3.0. [184]
^ Хотя схема управления версиями была сброшена до V1.0 для первых выпусков AXP (Alpha), эти выпуски были одновременны с выпусками V5.x и имели аналогичный набор функций.
^ Патрик Тибодо (31 июля 2014 г.). «HP дает OpenVMS новую жизнь». Computerworld . Получено 21 октября 2021 г. .
^ Камиль Вандерхувен (30 мая 2021 г.). «Сколько VMS все еще в MACRO-32?». Группа новостей : comp.os.vms . Получено 21 октября 2021 г.
^ "2.7 На каком языке написан OpenVMS?". Часто задаваемые вопросы (FAQ) по OpenVMS . Hewlett Packard Enterprise . Архивировано из оригинала 10 августа 2018 г.
^ ab "Доступ к исходному коду OpenVMS?". HP OpenVMS Systems задают вопрос мастеру . 2 сентября 1999 г. Архивировано из оригинала 28 октября 2017 г.
^ "Вебинар 16: обновление x86". VSI. 15 октября 2021 г. Архивировано из оригинала 11 декабря 2021 г. Получено 2 ноября 2021 г.
^ ab "OpenVMS V9.2-2 общедоступная версия". VSI . 25 января 2024 г. . Получено 25 января 2024 г. .
^ "Японская ОС OpenVMS (JVMS)". VSI . Получено 5 февраля 2021 г. .
^ Майкл М. Т. Яу (1993). «Поддержка китайского, японского и корейского языков в операционной системе OpenVMS» (PDF) . Цифровой технический журнал . 5 (3): 63–79 . Получено 21 октября 2021 г. .
^ abcdef "OpenVMS в 20 лет Ничто его не останавливает" (PDF) . Digital Equipment Corporation. Октябрь 1997 г. Получено 12 февраля 2021 г. .
^ abcd "Описание программного продукта и краткие характеристики - VSI OpenVMS версии 8.4-2L1 для серверов Integrity" (PDF) . VMS Software Inc. Июль 2019 г. . Получено 2 января 2021 г. .
^ "VSI Business & New Products Update – 9 апреля 2019 г." (PDF) . VSI. Апрель 2019 г. . Получено 4 мая 2021 г. .
^ Чарльз Бабкок (1 ноября 2007 г.). «Операционной системе VMS исполнилось 30 лет; клиенты верят, что она может прослужить вечно». InformationWeek . Получено 19 февраля 2021 г.
^ Дрю Робб (1 ноября 2004 г.). «OpenVMS выживает и процветает». computerworld.com . Получено 31 декабря 2020 г. .
↑ Тао Ай Лэй (30 мая 1998 г.). «Digital пытается спасти OpenVMS». computerworld.co.nz. Архивировано из оригинала 25 сентября 2021 г. Получено 31 декабря 2020 г.
^ Джесси Липкон (октябрь 1997 г.). «OpenVMS: 20 лет обновления». Digital Equipment Corporation. Архивировано из оригинала 17 февраля 2006 г. Получено 12 февраля 2021 г.
^ Патрик Тибодо (11 июня 2013 г.). «OpenVMS, RIP 1977-2020?». Computerworld . Получено 27 апреля 2024 г. .
^ Том Мерритт (2012). Хронология истории технологий. Lulu.com. стр. 104. ISBN978-1300253075.
^ "VAX 11/780 - OLD-COMPUTERS.COM : ИСТОРИЯ / подробная информация". Архивировано из оригинала 26 сентября 2023 г. Получено 25 апреля 2020 г.
^ "Поддерживаемые платформы". VSI .
^ ab "Развертывание V9.0 и далее" (PDF) . VSI . 19 мая 2020 г. . Получено 4 мая 2021 г. .
^ "HP передает разработку OpenVMS в VSI". Tech Times . 1 августа 2014 г. Получено 27 апреля 2024 г.
^ "VMS Software, Inc. названа эксклюзивным разработчиком будущих версий операционной системы OpenVMS" (пресс-релиз) . Получено 27 октября 2017 г.
^ ab "VSI Products - Clusters". VSI . Получено 4 мая 2021 г. .
^ "Cluster Uptime". 28 ноября 2003 г. Архивировано из оригинала 29 февраля 2012 г. Получено 20 декабря 2020 г.
^ "Commerzbank выживает после 11 сентября с помощью кластеров OpenVMS" (PDF) . Июль 2009 г. Получено 27 апреля 2024 г.
^ "Февраль 2018 Деловой и технический обзор" (PDF) . VSI. Февраль 2018 . Получено 4 мая 2021 .
↑ Катлер, Дэйв (25 февраля 2016 г.). «Устная история Дэйва Катлера». youtube.com (Интервью). Интервью взято Грантом Сэвьерсом. Музей компьютерной истории. Архивировано из оригинала 11 декабря 2021 г. Получено 26 февраля 2021 г.
^ ab Stephen Hoffman (сентябрь 2006 г.). "Что такое OpenVMS? Какова его история?". hoffmanlabs.com . Архивировано из оригинала 18 мая 2021 г. . Получено 3 января 2021 г. .
^ ab "Описание программного продукта – Операционная система VAX/VMS, версия 1.0" (PDF) . Digital Equipment Corporation. Сентябрь 1978 г. . Получено 21 октября 2021 г. .
^ "простой вопрос: что за чертовщина MCR?". Группа новостей : comp.os.vms. 14 сентября 2004 г. Получено 31 декабря 2020 г.
^ "Описание программного продукта VAX-11 RSX, версия 1.0" (PDF) . Digital Equipment Corporation. Октябрь 1984 . Получено 20 сентября 2021 .
^ «Привет из... ну, того, что раньше было SpitBrook». openvmshobbyist.com . 27 февраля 2007 г. . Получено 24 января 2021 г. .
^ "Computer system VAX/VMS". altiq.se . Архивировано из оригинала 1 февраля 2021 г. Получено 24 января 2021 г.
^ Майкл Д. Даффи (2002). Начало работы с OpenVMS: руководство для новых пользователей. Elsevier. ISBN978-0080507354.
^ "Операционная система Micro VMS". Computerworld . 18 июня 1984 г. стр. 7. Операционная система Micro VMS, анонсированная на прошлой неделе корпорацией Digital Equipment Corp. для ее семейства микрокомпьютеров Microvax I, представляет собой предварительно упакованную версию ...
^ Кэтлин Д. Морс. «Слияние VMS/MicroVMS». Журнал DEC Professional . С. 74–84.
^ ab "VMS Version 5.0 Release Notes" (PDF) . DEC. Апрель 1988 . Получено 21 июля 2021 .
↑ Боб Маккормик (11 января 1989 г.). «DECUServe WORKSTATIONS Conference 8». home.iae.nl . Архивировано из оригинала 10 июля 2022 г. . Получено 22 декабря 2020 г. .
^ "Офисная археология". blog.nozell.com . 24 февраля 2004 г. . Получено 22 декабря 2020 г. .
^ "Описание программного продукта - Desktop-VMS, версия 1.2" (PDF) . Цифровой. Январь 1991. Архивировано из оригинала (PDF) 16 августа 2000 года . Получено 2 февраля 2022 года .
^ "Страницы OpenVMS proGIS Germany". vaxarchive.org . Получено 22 декабря 2020 г. .
^ Д. О. Андриевская, ред. (май 1989). "Вычислительные комплексы, технические средства, программное обеспечение и обеспечение системы малых электронных вычислительных машин (СМ ЭВМ)" (PDF) . Всесоюзный научно-исследовательский институт информации и экономики . Получено 16 октября 2021 г.
^ Прохоров Н.Л.; Горский В.Е. «Базовое программное обеспечение для 32-разрядных моделей ЭВМ СМ». Журнал «Программные системы ». 1988 (3) . Получено 15 октября 2021 г.
^ Егоров ГА; Остапенко ГП; Столяр НГ; Шапошников ВА «Многофункциональная операционная система с поддержкой виртуальной памяти для 32-разрядных ЭВМ». Журнал «Программные системы ». 1988 (4) . Дата обращения 15 октября 2021 г.
^ "Установка ОС МОС-32М" (PDF) . pdp-11.ru (на русском языке). 16 июня 2012. Архивировано из оригинала (PDF) 27 октября 2021 . Получено 15 октября 2021 .
^ "VMS Version 5.0 Release Notes" (PDF) . Digital Equipment Corporation. Апрель 1988 . Получено 27 октября 2021 .
^ "Digital представляет первое поколение систем OpenVMS Alpha-Ready". Digital Equipment Corporation. 15 июля 1992 г. Получено 25 января 2021 г.
^ «Определение OpenVMS из энциклопедии журнала PC Magazine».
^ Арне Вайхёй (29 ноября 1999 г.). "Часто задаваемые вопросы по OpenVMS - В чем разница между VMS и OpenVMS?". vaxmacro.de . Архивировано из оригинала 24 сентября 2021 г. . Получено 25 января 2021 г. .
^ "История акулы Вернона VMS". vaxination.ca . Получено 24 января 2021 г. .
↑ Дэйв Катлер (30 мая 1988 г.). "DECwest/SDT Agenda" (PDF) . bitsavers.org .
^ "EV-4 (1992)". 24 февраля 2008 г.
^ ab Comerford, R. (июль 1992 г.). «Как DEC разработала Alpha». IEEE Spectrum . 29 (7): 26–31. doi :10.1109/6.144508.
^ «Управление технологическими скачками: исследование группы разработчиков Alpha компании DEC» (PDF) . Апрель 1993 г.
^ Supnik, Robert M. (1993). «Проект Digital's Alpha». Communications of the ACM . 36 (2): 30–32. doi : 10.1145/151220.151223 . ISSN 0001-0782. S2CID 32694010.
^ abc Clair Grant (июнь 2005 г.). "Перенос OpenVMS на серверы HP Integrity" (PDF) . OpenVMS Technical Journal . 6 .
^ ab Нэнси П. Кроненберг; Томас Р. Бенсон; Уэйн М. Кардоза; Равиндран Джаганнатан; Бенджамин Дж. Томас III (1992). «Перенос OpenVMS с VAX на Alpha AXP» (PDF) . Digital Technical Journal . 4 (4): 111–120 . Получено 27 апреля 2024 г. .
^ ab "Совместимость OpenVMS между VAX и Alpha". Digital Equipment Corporation. Май 1995 г. Получено 22 октября 2021 г.
^ "Расширение OpenVMS для 64-битной адресуемой виртуальной памяти" (PDF) . Цифровой технический журнал . 8 (2): 57–71. 1996. S2CID 9618620.
^ "The OpenVMS Mixed Pointer Size Environment" (PDF) . Digital Technical Journal . 8 (2): 72–82. 1996. S2CID 14874367. Архивировано из оригинала (PDF) 19 февраля 2020 г.
^ "HP OpenVMS Alpha Partitioning and Galaxy Guide". HP. Сентябрь 2003 г. Получено 22 октября 2021 г.
^ Джеймс Никколаи (14 октября 1998 г.). «Compaq детализирует стратегию OpenVMS». Australian Reseller News. Архивировано из оригинала 4 апреля 2023 г. Получено 14 января 2021 г.
^ "Compaq OpenVMS Times" (PDF) . Январь 2002. Архивировано из оригинала (PDF) 2 марта 2006.
↑ Эндрю Орловски (25 июня 2001 г.). «Прощай, Alpha — здравствуй, Compaq the Box Shifter». theregister.com . Получено 21 декабря 2020 г. .
^ Сью Сконецки (31 января 2003 г.). «OpenVMS Boots on Itanium on Friday Jan 31». Группа новостей : comp.os.vms . Получено 21 декабря 2020 г.
^ "Руководство по установке HP C для систем OpenVMS Industry Standard 64" (PDF) . HP. Июнь 2007 г. Получено 2 марта 2021 г. .
^ Томас Сибольд (2005). "OpenVMS Integrity Boot Environment" (PDF) . decus.de . Получено 21 декабря 2020 г. .
^ abc Camiel Vanderhoeven (8 октября 2017 г.). Перепроектирование SWIS для X86-64. YouTube . Архивировано из оригинала 11 декабря 2021 г. Получено 21 октября 2021 г.
^ Гайтан Д'Антони (2005). «Перенос приложений OpenVMS на Itanium» (PDF) . hp-user-society.de . Получено 21 декабря 2020 г. .
^ "Арифметика с плавающей точкой OpenVMS на архитектуре Intel Itanium" (PDF) . decus.de . 2003 . Получено 21 декабря 2020 .
^ Томас Сибольд (2005). "OpenVMS Moving Custom Code" (PDF) . decus.de . Получено 21 декабря 2020 г. .
^ Пол Лакомб (2005). "Стратегия и будущее HP OpenVMS" (PDF) . de.openvms.org . Получено 21 декабря 2020 г. .
^ "VMS Software, Inc. названа эксклюзивным разработчиком будущих версий операционной системы OpenVMS" (пресс-релиз). 31 июля 2014 г. Архивировано из оригинала 10 августа 2014 г.
^ ab "OpenVMS Rolling Roadmap" (PDF) . VSI. Декабрь 2019 г. Архивировано из оригинала (PDF) 10 июня 2020 г. Получено 4 мая 2021 г.
^ "Вопросы и ответы VSI V9.0" . ВСИ . Проверено 27 апреля 2024 г.
^ VSI (1 июня 2021 г.). OpenVMS x64 Atom Project. YouTube . Архивировано из оригинала 11 декабря 2021 г. Получено 2 июня 2021 г.
↑ Встреча разработчиков LLVM 2017: Дж. Рейган «Портирование OpenVMS с использованием LLVM». YouTube . 31 октября 2017 г. Архивировано из оригинала 11 декабря 2021 г.
^ "Состояние порта x86_64 на январь 2017 г." (PDF) . 6 января 2017 г. Архивировано из оригинала (PDF) 4 ноября 2019 г.
^ "VMS Software Inc. объявляет о первой загрузке на архитектуре x86". VSI . 14 мая 2019 г. . Получено 4 мая 2021 г. .
^ "State of the Port". VSI . Архивировано из оригинала 18 апреля 2021 г. . Получено 16 апреля 2021 г. .
^ ab "OpenVMS 9.1". VSI . 30 июня 2021 г. Архивировано из оригинала 30 июня 2021 г. Получено 30 июня 2021 г. .
^ ab "VMS Software Releases OpenVMS V9.1-A". VSI . 30 сентября 2021 г. . Получено 30 сентября 2021 г. .
^ Кэтрин Ричардсон; Терри Моррис; Роки Морган; Рид Браун; Донна Мейкл (март 1987 г.). «Бизнес-план программного обеспечения MICA» (PDF) . Bitsavers . Получено 4 января 2021 г.
^ Закари, Г. Паскаль (2014). Showstopper!: Головокружительная гонка за создание Windows NT и следующего поколения в Microsoft. Open Road Media. ISBN978-1-4804-9484-8. Получено 4 января 2021 г. .
↑ Марк Руссинович (30 октября 1998 г.). «Windows NT и VMS: Остальная часть истории». ITPro Today . Получено 4 января 2021 г.
↑ Eugenia Loli (23 ноября 2004 г.). "FreeVMS 0.1.0 Released". OSnews . Получено 2 апреля 2022 г. .
^ "Официальная веб-страница FreeVMS". Архивировано из оригинала 8 сентября 2018 г.
^ Wiecek, Cheryl A.; Kaler, Christopher G.; Fiorelli, Stephen; Davenport, Jr., William C.; Chen, Robert C. (апрель 1992 г.). «Модель и прототип VMS с использованием ядра Mach 3.0». Труды семинара USENIX по микроядрам и другим архитектурам ядра : 187–203 . Получено 20 сентября 2021 г.
^ abcdef Рут Э. Гольденберг; Лоуренс Дж. Кена; Дениз Э. Дюма (1991). Внутреннее устройство и структуры данных VAX/VMS, версия 5.2. Цифровая пресса. ISBN978-1555580599.
^ abc Хантер Гоутли; Эдвард А. Хайнрих. «Написание привилегированного кода VMS, часть I: основы, часть 1». hunter.goatley.com . Получено 31 января 2021 г. .
^ Пол А. Каргер; Мэри Эллен Зурко; Дуглас В. Бенин; Эндрю Х. Мейсон; Клиффорд Э. Кан (7–9 мая 1990 г.). Ядро безопасности VMM для архитектуры VAX (PDF) . Труды. Симпозиум компьютерного общества IEEE 1990 г. по исследованиям в области безопасности и конфиденциальности. IEEE. doi :10.1109/RISP.1990.63834 . Получено 31 января 2021 г.
^ "Справочное руководство по системным службам VSI OpenVMS: A–GETUAI" (PDF) . VSI. Июнь 2020 г. . Получено 15 февраля 2021 г. .
^ Уэйн Сьюэлл (1992). Внутри VMS: Руководство системного администратора и системного программиста по внутренним компонентам VMS. Ван Ностранд Рейнхольд. ISBN0-442-00474-5.
^ «Справочное руководство пользователя ввода-вывода VSI OpenVMS» (PDF) . ВСИ. Август 2019 года . Проверено 13 января 2021 г.
^ ab "Энди Голдштейн о Files-11, файловых системах OpenVMS". Официальный канал VSI. 25 июля 2019 г. Архивировано из оригинала 12 января 2021 г. Получено 3 января 2021 г.
^ "VSI OpenVMS Guide to OpenVMS File Applications" (PDF) . VSI. 23 июля 2019 г. . Получено 13 января 2021 г. .
^ «Почему Spiralog был уволен?». Сообщество Hewlett Packard Enterprise — Операционная система — OpenVMS . 10 января 2006 г. Получено 13 января 2021 г.
^ «Почему Spiralog был уволен?». Сообщество Hewlett Packard Enterprise — Операционная система — OpenVMS . 10 января 2006 г. Получено 13 января 2021 г.
^ "VSI OpenVMS Software Roadmap 2020" (PDF) . Сентябрь 2020 г. Архивировано из оригинала (PDF) 7 декабря 2020 г. Получено 23 сентября 2020 г.
^ "OpenVMS User's Manual" (PDF) . VSI . Июль 2020 г. Глава 14, Advanced Programming with DCL . Получено 9 апреля 2021 г. .
^ ab Simon Clubley (3 июля 2017 г.). «Насколько опасно иметь возможность войти в режим супервизора DCL?». Группа новостей : comp.os.vms . Получено 1 февраля 2021 г.
^ «Кластерные системы VSI OpenVMS» (PDF) . ВСИ. Август 2019 года . Проверено 13 января 2021 г.
^ "Building Dependable Systems: The OpenVMS Approach" (PDF) . ДЕКАБРЬ. Май 1994 г. Получено 31 июля 2021 г.
^ "Cluster Uptime". 28 ноября 2003 г. Архивировано из оригинала 29 февраля 2012 г. Получено 20 декабря 2020 г.
^ "DECnet for OpenVMS Guide to Networking" (PDF) . VSI. Август 2020 г. Архивировано из оригинала (PDF) 21 января 2021 г. Получено 14 января 2021 г.
^ "Описание программного продукта: DECnet-VAX, версия 1" (PDF) . DEC. Сентябрь 1978 . Получено 23 мая 2023 .
^ «Продукты VSI — DECnet» . ВСИ . Проверено 14 января 2021 г.
^ "Руководство системного администратора VMS/ULTRIX". Digital Equipment Corporation. Сентябрь 1990 г. Получено 21 января 2021 г.
^ "Руководство пользователя VSI OpenVMS TCP/IP" (PDF) . VSI. Август 2019 . Получено 14 января 2021 .
^ Роберт Раппапорт; Яник Пуффари; Стив Лиман; Мэри Дж. Маротта (2004). «Параллелизм и производительность в ядре OpenVMS TCP/IP». Технический журнал OpenVMS . 4 .
^ Алан Абрахамс; Дэвид А. Лоу (1992). «Обзор семейства продуктов PATHWORKS» (PDF) . Digital Technical Journal . 4 (1): 8–14 . Получено 27 апреля 2024 г. .
^ Энди Голдштейн (2005). "Samba и OpenVMS" (PDF) . de.openvms.org . Получено 1 января 2021 г. .
^ "Концепции локальной транспортной сети" (PDF) . ДЕКАБРЬ. Июнь 1988 г. Получено 14 января 2021 г.
^ abcde "VAX/VMS Software Language and Tools Handbook" (PDF) . bitsavers.org . 1985 . Получено 31 декабря 2020 .
^ "VSI List of Products". VSI . Получено 4 мая 2021 г. .
^ «Руководство по отладчику VSI OpenVMS» (PDF) . ВСИ. Июнь 2020 года . Проверено 4 мая 2021 г.
^ «Руководство по отладчику VSI OpenVMS Delta/XDelta» (PDF) . ВСИ. Август 2019 года . Проверено 31 декабря 2020 г.
^ "VMS IDE". Visual Studio Marketplace . Получено 2 января 2021 г.
^ "VAX/VMS Software Information Management Handbook" (PDF) . Digital Equipment Corporation. 1985 . Получено 24 января 2021 г. .
^ Ян Смит (2004). «Первые 20 лет Rdb: Воспоминания и основные моменты» (PDF) . Архивировано из оригинала (PDF) 3 ноября 2005 г. . Получено 24 января 2021 г. .
^ "Compaq ACMS для OpenVMS Getting Started". Compaq. Декабрь 1999 г. Получено 24 января 2021 г.
^ «Создание надежных систем: подход OpenVMS». Digital Equipment Corporation. Март 1994 г. Получено 17 октября 2022 г.
^ "Сопроводительное письмо к комплекту DECADMIRE V2.1 MUP - DECADMIRE V2.1A". Digital Equipment Corporation. 1995. Получено 24 января 2021 г.[ постоянная мертвая ссылка ]
^ Кевин Даффи; Филипп Вижье (2004). "Статус и направление Oracle Rdb" (PDF) . Получено 24 января 2021 г.
↑ Ларри Гельц; Джон Паладино (31 мая 1999 г.). «Сопроводительное письмо к DSM». Compaq . Получено 24 января 2021 г.[ постоянная мертвая ссылка ]
^ Нил Риек (29 июня 2020 г.). «OpenVMS Notes MySQL и MariaDB». Архивировано из оригинала 31 января 2021 г. Получено 24 января 2021 г.
^ Бенгт Гунне (2017). "Mimer SQL на OpenVMS настоящее и будущее" (PDF) . Получено 27 апреля 2024 г. .
^ "Mimer SQL теперь доступен для OpenVMS на x86". Mimer Information Technology AB. 2023.
^ "Rocket Software System 1032". Rocket Software. Архивировано из оригинала 22 января 2021 г. Получено 24 января 2021 г.
^ Хоффман, Стивен; Анагностопулос, Пол (1999). Написание реальных программ на DCL (2-е изд.). Digital Press. ISBN1-55558-191-9.
^ "Описание программного продукта HP DECforms для OpenVMS, версия 4.0" (PDF) . Hewlett Packard Enterprise . Август 2006 . Получено 1 января 2021 .[ постоянная мертвая ссылка ]
^ "Описание программного продукта HP FMS для OpenVMS, версия 2.5" (PDF) . Hewlett Packard Enterprise . Январь 2005 . Получено 1 января 2021 .[ постоянная мертвая ссылка ]
^ "Compaq TDMS для OpenVMS VAX, версия 1.9B" (PDF) . Hewlett Packard Enterprise . Июль 2002 . Получено 1 января 2021 .[ постоянная мертвая ссылка ]
^ "OpenVMS RTL Screen Management (SMG$) Manual". Hewlett Packard Enterprise . 2001. Архивировано из оригинала 4 декабря 2020 г. Получено 1 января 2021 г.
^ Рик Спитц; Питер Джордж; Стивен Залевски (1986). «Создание рабочей станции Micro VAX» (PDF) . Цифровой технический журнал . 1 (2) . Получено 21 октября 2021 г.
^ "MicroVMS Workstation Graphics Programming Guide" (PDF) . Digital Equipment Corporation. Май 1986. Получено 21 октября 2021 г.
^ Фред Кляйнзорге (4 января 2007 г.). "comp.os.vms - Dec VWS Internals". Группа новостей : comp.os.vms . Получено 27 февраля 2021 г.
^ Скотт А. МакГрегор (1990). "Обзор архитектуры DECwindows" (PDF) . Цифровой технический журнал . 2 (3). Корпорация цифрового оборудования . Получено 21 октября 2021 г.
^ abcd "(Open)VMS(/VAX), Обзор версий". vaxmacro.de . Архивировано из оригинала 22 октября 2020 г. . Получено 21 октября 2021 г. .
^ "Перенос приложений VWS/UIS в DECwindows?". HP OpenVMS спрашивает мастера . 9 ноября 2004 г. Архивировано из оригинала 15 сентября 2018 г.
^ Джанет Доббс (август 1989 г.). «Стратегии продуктивного и переносимого написания графических приложений UNIX» (PDF) . Информационный бюллетень AUUG . 10 (4): 50 . Получено 29 декабря 2021 г. .
^ «Использование DECwindows Motif для OpenVMS» (PDF) . VSI . Октябрь 2019 . Получено 21 октября 2020 .
^ S. Kadantsev; M. Mouat. Early Experience With DECwindows/Motif In the TRIUMF Central Control System (PDF) . 13th International Conference on Cyclotrons and their Applications. стр. 676–677. Архивировано из оригинала (PDF) 25 ноября 2017 г. . Получено 28 августа 2019 г. .
^ «Начало работы с новым рабочим столом». Digital Equipment Corporation. Май 1996 г. Получено 21 октября 2021 г.
^ OpenGL Frequently Asked Questions (FAQ) [1/3]. Faqs.org. Получено 17 июля 2013 г.
^ "Описание программного продукта VSI Graphical Kernel System" (PDF) . VSI. 2017 . Получено 2 января 2021 г. .
^ "Описание программного продукта DEC PHIGS версии 3.1 для OpenVMS VAX" (PDF) . Hewlett Packard Enterprise . Апрель 1995 г. Получено 2 января 2021 г.[ постоянная мертвая ссылка ]
^ "VSI OpenVMS Guide to System Security" (PDF) . VSI. Декабрь 2019 . Получено 26 апреля 2021 .
^ Национальный центр компьютерной безопасности (NCSC) Список оценки доверенных продуктов (TPEL)
^ "Руководство HP OpenVMS по безопасности системы". Hewlett Packard. Сентябрь 2003 г. Получено 21 октября 2021 г.
^ Грин, Джеймс Л.; Сиссон, Патрисия Л. (июнь 1989 г.). "Червь "Рождественский Дед Мороз"" (PDF) . Труды 12-й Национальной конференции по компьютерной безопасности . Получено 23 ноября 2015 г.
^ Кевин Рич (ноябрь 2004 г.). «Аудит безопасности OpenVMS: точка зрения внутреннего аудитора». Институт SANS . Получено 21 июля 2021 г.
^ Claes Nyberg; Christer Oberg; James Tusini (20 января 2011 г.). "DEFCON 16: Взлом OpenVMS". YouTube . Архивировано из оригинала 11 декабря 2021 г. . Получено 21 июля 2021 г. .
^ О внутренней работе механизма CTRL-Y см.: Внутреннее устройство и структуры данных OpenVMS AXP, версия 1.5, разделы 30.6.5.1 (Обработка CTRL/Y) и 30.6.5.4 (Команда CONTINUE) на стр. 1074–1076.
^ Джон Лейден (6 февраля 2018 г.). «Призрак в оболочке DCL: OpenVMS, рекламируемый как сверхнадежный, имел локальную корневую дыру в течение 30 лет». theregister.com . Получено 13 января 2021 г. .
^ Digital Equipment Corporation (1994). Описание программного продукта - POSIX для OpenVMS 2.0 .
^ "OpenVMS Alpha Version 7.3-1 Новые функции и обзор документации. Начало индекса". Июнь 2002 г.[ постоянная мертвая ссылка ]
^ "Продукты VSI - GNV" . ВСИ . Проверено 19 августа 2020 г.
^ "ϕnix: эмулятор Unix для VAX/VMS" (PDF) . 10 августа 1987 г. Архивировано из оригинала (PDF) 22 января 2004 г.
^ "Compaq и DECUS расширяют программу Free License OpenVMS Hobbyist". Compaq. 10 марта 1999 г. Получено 1 августа 2021 г.
^ "Программа для любителей". Process Software . Получено 24 апреля 2020 г. .
^ Билл Педерсен; Джон Малмберг. "VMS Hardware". vms-ports . Получено 30 июля 2021 г. .
^ "HPE устанавливает конечную дату для лицензий для любителей OpenVMS". Архивировано из оригинала 4 июля 2020 г. Получено 4 июля 2020 г.
^ "VMS Software объявляет о лицензии сообщества". VSI . 22 апреля 2020 г. Получено 4 мая 2021 г.
^ «Доступна лицензия сообщества программного обеспечения VMS». VSI . 28 июля 2020 г. Получено 4 мая 2021 г.
^ «VSI объявляет об обновлении лицензий сообщества» . ВСИ . 11 июня 2020 г. . Проверено 4 мая 2021 г.
^ "HP OpenVMS Systems - История выпусков OpenVMS". 21 июня 2010 г. Архивировано из оригинала 7 октября 2018 г.
^ "OpenVMS – Руководство по стратегии и дорожной карте". VSI . Получено 27 сентября 2021 г. .
^ "HP OpenVMS Systems - Поддерживаемые версии программного обеспечения - Январь 2014". Архивировано из оригинала 14 октября 2018 г.
^ «Дорожная карта программного обеспечения VSI OpenVMS на 2021 год» (PDF) . ВСИ . Проверено 30 сентября 2021 г.
^ "Служба технической поддержки программного обеспечения OpenVMS" (PDF) . hp.com . Hewlett Packard. Октябрь 2003 г. Получено 1 февраля 2022 г. .[ постоянная мертвая ссылка ]
^ "История выпусков OpenVMS". Bitsavers . HP . Получено 23 января 2022 г. .
^ ab Энди Голдштейн (16 сентября 1997 г.). «Когда впервые появилась VMS?». Группа новостей : comp.os.vms . Получено 5 марта 2022 г.
↑ VAX/VMS Release Notes Version 3.5 . ДЕКАБРЬ. Ноябрь 1983. AA-P766A-TE.
↑ VAX/VMS Release Notes Version 3.6 . Декабрь-апрель 1984. AA-V332A-TE.
↑ VAX/VMS Release Notes Version 3.7 . Декабрь. Август 1984. AA-CJ33A-TE.
^ vms-источник-списки
^ vms-источник-списки
^ «Приверженность инициативе DII COE обеспечивает долгосрочную поддержку и переносимость приложений для клиентов OpenVMS». Hewlett Packard Enterprise . Получено 7 сентября 2023 г.
^ "HP OpenVMS Systems - OpenVMS Version 8.4". Архивировано из оригинала 2 сентября 2010 г.
^ "VMS Software, Inc. запускает новую версию операционной системы OpenVMS по всему миру" (PDF) (пресс-релиз). 1 июня 2015 г. Архивировано из исходного (PDF) 7 августа 2015 г. Получено 4 июня 2015 г.
^ "VMS Software, Inc. запускает новую версию 8.4-2L1 операционной системы OpenVMS по всему миру". VSI (пресс-релиз). 23 сентября 2016 г. Получено 4 мая 2021 г.
^ "VMS Software, Inc. запускает VSI OpenVMS Alpha V8.4-2L1 для оборудования Alpha". VSI (пресс-релиз). 27 января 2017 г. Получено 4 мая 2021 г.
^ ab "Roadmap Update". VSI . Сентябрь 2020. Архивировано из оригинала 27 сентября 2020 г. Получено 23 сентября 2020 г.
^ "OpenVMS для x86 V9.0 EAK отправляется первому клиенту 15 мая 2020 г.". VSI . 24 апреля 2020 г. . Получено 4 мая 2021 г. .
^ "VSI OpenVMS v9.2 Released". VSI . 14 июля 2022 г. . Получено 14 июля 2022 г. .
^ "OpenVMS V9.2-1 Final Release". VSI . 15 июня 2023 г. . Получено 15 июня 2023 г. .
Рут Голденберг; Саро Сараванан (1994). Внутреннее устройство и структуры данных OpenVMS AXP: Версия 1.5. Цифровая пресса. ISBN 978-1555581206.
Внутреннее устройство и структуры данных OpenVMS Alpha: Управление памятью, Рут Голденберг, ISBN 1-55558-159-5
Внутреннее устройство и структуры данных OpenVMS Alpha: Планирование и управление процессами: Версия 7.0, Рут Голденберг, Саро Сараванан, Дениз Дюма, ISBN 1-55558-156-0
Внутреннее устройство и структуры данных VAX/VMS: Версия 5.2 («IDSM»), Рут Голденберг, Саро Сараванан, Дениз Дюма, ISBN 1-55558-059-9
Написание реальных программ на языке DCL, второе издание, Стивен Хоффман, Пол Анагностопулос, ISBN 1-55558-191-9
Написание драйверов устройств OpenVMS Alpha на языке C, Марджи Шерлок, Леонард Шубович, ISBN 1-55558-133-1
Управление производительностью OpenVMS, Джогиндер Сети, ISBN 1-55558-126-9
Начало работы с системой управления OpenVMS, 2-е издание, Дэвид Дональд Миллер, Стивен Хоффман, Лоуренс Болдуин, ISBN 1-55558-243-5
Руководство пользователя OpenVMS, второе издание, Патрик Холмей, ISBN 1-55558-203-6
Использование DECwindows Motif для OpenVMS, Марджи Шерлок, ISBN 1-55558-114-5
Уэйн Сьюэлл (1992). Внутри VMS: Руководство системного администратора и системного программиста по внутренним компонентам VMS. Ван Ностранд Рейнхольд. ISBN 0-442-00474-5.
Руководство для автостопщиков по VMS: неподдерживаемая, недокументированная, которая может исчезнуть в любой момент функция VMS, Брюс Эллис, ISBN 1-878956-00-0
Роланд Хьюз (декабрь 2006 г.). Минимум, который вам нужно знать, чтобы стать разработчиком приложений OpenVMS. Logikal Solutions. ISBN 978-0-9770866-0-3.
Внешние ссылки
На Викискладе есть медиафайлы по теме OpenVMS .
Программное обеспечение VMS: Текущая дорожная карта и будущие релизы
Программное обеспечение VMS: Документация
Часто задаваемые вопросы по HP OpenVMS на Wayback Machine (архивировано 12 января 2020 г.)