OpenVMS

OpenVMS
{{{screenshot}}}
Эмблема OpenVMS
Разработчик DEC, Compaq, HP
Семейство ОС
Исходный код Проприетарное ПО
Последняя версия 8.3 — сентябрь 2006 года
Тип ядра Монолитное с модулями
Интерфейс {{{default_ui}}}
Лицензия Закрытая
Состояние Актуальное
Веб-сайт HP OpenVMS

OpenVMS (англ. Open Virtual Memory System, или VMS) — проприетарная 64-разрядная серверная операционная система разработанная во второй половине 1970-х годов компанией Digital Equipment Corporation для серии компьютеров VAX. Позже портирована на платформы DEC Alpha и Intel Itanium. Сейчас принадлежит Hewlett-Packard.

Содержание

История

В апреле 1975 года DEC объявила о начале проекта по разработке аппаратной платформы под названием Star, которая позволила бы расширить функциональность существующего PDP-11 для работы с 32-битными адресами виртуальной памяти. Сопутствующий проект по разработке программного обеспечения, под названием Starlet, был начат в июне 1975 года. В рамках проекта планировалось разработать для семейства Star абсолютно новую ОС, основанную на RSX-11M, операционной системе для PDP-11. Эти два проекта с самого начала разрабатывались в тесном сотрудничестве. В проекте Starlet под руководством Роджера Гоурда работали инженеры по разработке ПО Дэвид Катлер, Дик Хастведт и технический руководитель проекта Питер Липман, каждый из которых отвечал за разработку отдельных частей операционной системы. Результатом работ по проектам Star и Starlet стали компьютер VAX 11/780 и операционная система VAX-11/VMS. Имя Starlet сохранилось в VMS в имени одной из основных системных библиотек, STARLET.OLB.

В 1980 году с выходом версии 2.0 имя системы было изменено на VAX/VMS (в тоже время компьютер VAX-11 переименовали в просто VAX). С появлением серии компьютеров MicroVAX во второй половине 1980-х годов, была выпущена MicroVMS, специфически нацеленная на эту платформу, которая имела гораздо более ограниченные память и размер жёсткого диска, чем полноценный VAX. Например, MicroVAX 2000 имел 40 Мб RD32 жёсткий диск и всего 4 Мб ОЗУ, а его процессор мог лишь программно эмулировать некоторые инструкции VAX с плавающей запятой. Комплект MicroVMS распространялся для версий VAX/VMS с 4.0 по 4.7 на магнитной ленте типа TK50 и флоппи дисках типа RX50, но после выхода VAX/VMS 5.0 это прекратилось.

В 1991 году система была переименована в OpenVMS для обозначения поддержки ею таких промышленных стандартов как POSIX и совместимость с Unix, и начала процесса портирования системы на 64-разрядный RISC процессор DEC Alpha. Впервые именем OpenVMS была названа версия 5.5-2.

Платформы

DEC Alpha

Портирование на платформу Alpha потребовало создания отдельных ветвей исходного кода для 32-разрядной и 64-разрядной архитектур. В 1992 году увидела свет первая версия OpenVMS для систем Alpha AXP, названная OpenVMS AXP V1.0. Решение использовать нумерацию начинающуюся с 1.X для предпромышленных версий OpenVMS AXP послужило причиной неразберихи для некоторых клиентов и в дальнейшем она перестала использоваться. В 1994 году с выходом OpenVMS 6.1 было достигнуто равенство в возможностях и номерах версий между вариантами для VAX и Alpha. Нумерация последующих версий одинакова для обеих платформ.

Intel Itanium

В 2001 году компания Compaq незадолго до слияния с HP объявила о начале работ по портированию системы на только что появившуюся 64-разрядную платформу Intel Itanium. Портирование осуществлялось на основе исходного кода и библиотек версии OpenVMS для Alpha. Использование исходного кода OpenVMS для Alpha в качестве основы объяснялось тем, что он был полностью 64-разрядным, следовательно гораздо более подготовленным к портированию, чем исходный код оригинальной OpenVMS для VAX. В отличие от портирования с VAX на Alpha, когда в исходный код версии V5.4 для VAX было внесено множество изменений и результат сильно отличался от оригинала, версии для Alpha и Itanium основаны на общем исходном коде и используют одинаковый инструментарий.

OpenVMS I64 V8.0 — первая предпромышленная версия, выпущена в июне 2003 года.

OpenVMS V8.2 — первая промышленная версия для Itanium, выпущена в январе 2005 года. Также доступна для платформы Alpha.

OpenVMS I64 V8.2-1, добавлена поддержка систем HP Integrity Superdome и cell based систем, выпущена в сентябре 2005 года. Доступна только для Itanium платформ.

OpenVMS V8.3, выпущена в сентябре 2006 года как для Alpha, так и для Itanium.

x86

В конце 1980-х в DEC в рамках проекта Emerald велись работы по портированию OpenVMS на архитектуру x86, но проект был закрыт по финансовым соображениям. Несогласный с решением менеджмента руководитель разработки Дэвид Катлер (David Cutler) перешёл в Microsoft, где занялся разработкой Windows NT. Существует мнение, что в основе Windows NT лежат концепции и системные решения основанные на достижениях OpenVMS.

Существует проект FreeVMS по созданию под лицензией GPL клона OpenVMS для платформы x86 . Проект находится на начальной стадии, последней стабильной версией является 0.2.15.

Функциональность

OpenVMS является многопользовательской, многозадачной ОС с поддержкой виртуальной памяти. Она предназначена для использования в режиме разделения времени, пакетной обработки и обработки транзакций. Благодаря возможности создания кластеров из нескольких компьютеров OpenVMS позволяет создавать высокомасштабируемые системы. OpenVMS допускает использование оконного интерфейса DECWindows, совместимого с X-Window.

Системные функции

Многозадачность в OpenVMS опирается на потоки (kernel thread). Поток состоит из индивидуального адресного пространства, регистров, образующих его контекст, и кода — исполняемого образа. Контекст идентифицирует поток и описывает его текущее состояние, а исполняемый образ состоит из системных и пользовательских программ (откомпилированных и собранных). Каждый процесс может содержать до 16 потоков. Максимальное число поддерживаемых параллельных процессов в OpenVMS — 16 384. Процессорное время распределяется между потоками в соответствии с приоритетами, которых насчитывается 64. Приоритеты от 0 до 15 назначаются процессам с разделяемым временем или некритичным ко времени исполнения, диапазон от 16 до 63 предназначен для процессов реального времени. Процессы реального времени получают время сразу, как только оно требуется (в соответствии с приоритетом), обычные процессы получают вычислительные ресурсы только тогда, когда ими не пользуются процессы реального времени. В OpenVMS процессу можно назначить приоритет выше, чем даже у ядра системы!

В OpenVMS используются файловые системы Files-11 (ODS-2, ODS-5) и Spiralog.

По языку командной строки и файловой системе OpenVMS является наследницей RSX-11 и RT-11.

Сетевые функции

В OpenVMS существует три различные реализации сетевого стека:

  • DECnet, для работы в сетях использующих проприетарные сетевые протоколы разработанные DEC.
  • TCPware, для работы со стеком протоколов TCP/IP.
  • MultiNet.

Уникальные, передовые функции

В OpenVMS впервые стали коммерчески доступны технологии которые в настоящее время являются стандартными в серверных операционных системах:

  • Встроенная поддержка сетей (сначала DECnet и позднее TCP/IP)
  • Симметричная, асимметричная и NUMA многопроцессорность а также одна из первых реализаций кластера.
  • Распределённая файловая система
  • Реализованы функции баз данных (RMS-32 и Rdb)
  • Поддержка различных языков программирования
  • Расширяемый язык командной оболочки DCL — (DIGITAL Command Language)
  • Разделение аппаратных средств процессоров для поддержки многопоточности.
  • Поддержка различных сертификатов безопасности

Безопасность

Средства защиты информации заложены в OpenVMS с момента создания, так как в многопользовательских системах разграничение прав пользователей — одна из первоочередных задач. В версиях для VAX предусмотрены четыре режима работы процессора, обеспечивающих различные уровни доступа (после регистрации пользователя в системе процессор переходит в соответствующий режим для выполнении его задач). Не обладая надлежащими полномочиями, просто физически невозможно запустить, например, программу-взломщик. На Alpha такие возможности отсутствуют. OpenVMS располагает развитыми средствами контроля за паролями:

  • проверкой стандартных характеристик (срок действия пароля, длина, использовался ли пароль ранее);
  • генерацией случайных паролей
  • проверкой на наличие в паролях общеупотребительных слов;
  • возможность задания специфических требований к «содержимому пароля».

Контролируется доступ ко всем системным объектам: томам, устройствам, файлам, очередям и т. д. Каждому классу объектов (кроме файлов) можно по умолчанию назначить уровень защиты при его создании. Файл получает уровень защиты либо от своей предыдущей версии, либо от создавшего его процесса. При желании файл может быть удален полностью (erase-on-delete) без возможности его восстановления. Также OpenVMS обеспечивает аудит регистрации или выхода из системы, попытки подбора пароля, любых типов операций с заданными объектами (или классами объектов), любых изменений параметров системы, любых изменений, касающихся политики защиты информации.

Все версии OpenVMS соответствуют требованиям класса C2 «Критериев определения безопасности компьютерных систем» и сертифицированы Министерством обороны США. Специальная версия системы, SEVMS (SecureVMS), имеет повышенный уровень защиты и сертифицируется по классу B1.

На международном фестивале хакеров Defcon 9 (Лас-Вегас, 2001 год) мировое хакерское сообщество всего мира признали OpenVMS неуязвимой для взлома.

Лицензии и распространение

Проприетарная, распространялась главным образом с серверами. В 1997 году открыта программа поддержки энтузиастов, использующих OpenVMS. По этой программе предоставляются коды лицензий для некоммерческого использования энтузиастами.

Compaq, купившая DEC, предлагала программу для образовательных учреждений.

Области применения

Применяется для построения отказоустойчивых систем высокой готовности и mission-critical применений. Под управлением OpenVMS (на платформе VAX) работает линия выпуска процессоров на фабрике Intel в Израиле.

Среди отечественных заказчиков OpenVMS преобладают оборонные структуры и банки. В банках кластеры под управлением OpenVMS спользуются в качестве серверов баз данных (как правило, Oracle). В одном из региональных отделений Сбербанка под OpenVMS написано приложение, обеспечивающее всю работу банка. Другое, не менее распространенное назначение OpenVMS — работа с международной системой межбанковских транзакций SWIFT. Это связано как со стремлением возможно более надежно осуществлять транзакции, так и тем, что для SWIFT изначально разрабатывалась под OpenVMS.

Литература

См. также

Ссылки

 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home