Відмінності між версіями «OpenVMS»

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
 
Рядок 1: Рядок 1:
''' УВАГА! ЗМІСТ ЦІЄЇ ВІКІ СТАТТІ МОЖЕ МІСТИТИ ГРАМАТИЧНІ (НЕ ЗМІСТОВІ!) ПОМИЛКИ. ЯКЩО ТАКІ Є, ТО ВОНИ БУДУТЬ ВИПРАВЛЕНІ НАЙБЛИЖЧИМ ЧАСОМ'''
 
 
 
[[Image:800px-DWbigpic.gif|thumb|500px|Вікно VMS]]
 
[[Image:800px-DWbigpic.gif|thumb|500px|Вікно VMS]]
  
Рядок 23: Рядок 21:
 
У 1980 році , з виходом версії 2.0 , ім'я системи було змінено на VAX / VMS (у той же час комп'ютер VAX - 11 перейменували в просто VAX ) . З появою серії комп'ютерів MicroVAX в другій половині 1980 -х років , була випущена MicroVMS , специфічно націлена на цю платформу , яка мала значно більш обмежені пам'ять і розмір жорсткого диска , ніж повноцінний VAX . Наприклад , MicroVAX 2000 мав жорсткий диск RD32 ємністю 40 Мб і всього 4 Мб ОЗУ , а його процесор міг лише програмно емулювати деякі інструкції VAX з плаваючою комою. Комплект MicroVMS поширювався для версій VAX / VMS з 4.0 по 4.7 на магнітній стрічці типу TK50 і флоппі дисках типу RX50 , але після виходу VAX / VMS 5.0 це припинилося .
 
У 1980 році , з виходом версії 2.0 , ім'я системи було змінено на VAX / VMS (у той же час комп'ютер VAX - 11 перейменували в просто VAX ) . З появою серії комп'ютерів MicroVAX в другій половині 1980 -х років , була випущена MicroVMS , специфічно націлена на цю платформу , яка мала значно більш обмежені пам'ять і розмір жорсткого диска , ніж повноцінний VAX . Наприклад , MicroVAX 2000 мав жорсткий диск RD32 ємністю 40 Мб і всього 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 .
+
У 1991 році система була перейменована в OpenVMS для позначення підтримки нею таких промислових стандартів як POSIX і сумісність з Unix , після чого почався процес портування системи на 64- розрядний RISC -процесор DEC Alpha . Вперше ім'ям OpenVMS була названа версія 5.5-2 .
  
 
= Платформи =
 
= Платформи =
Портування на платформу Alpha зажадало створення окремих гілок вихідного коду для 32- розрядної і 64- розрядної архітектур . У 1992 році побачила світ перша версія OpenVMS для систем Alpha AXP , названа OpenVMS / AXP V1.0 . Рішення використовувати нумерацію що починається з 1.x для предпромишленних версій OpenVMS / AXP послужило причиною плутанини для деяких клієнтів і надалі вона перестала використовуватися .
+
Портування на платформу Alpha зажадало створення окремих гілок вихідного коду для 32- розрядної і 64- розрядної архітектур . У 1992 році побачила світ перша версія OpenVMS для систем Alpha AXP , названа OpenVMS / AXP V1.0 . Рішення використовувати нумерацію що починається з 1.x для версій OpenVMS / AXP послугувало причиною плутанини для деяких клієнтів і надалі вона перестала використовуватися .
  
 
У 1994 році з виходом OpenVMS 6.1 було досягнуто рівність у можливостях і номерах версій між варіантами для VAX і Alpha. Нумерація наступних версій однакова для обох платформ.
 
У 1994 році з виходом OpenVMS 6.1 було досягнуто рівність у можливостях і номерах версій між варіантами для VAX і Alpha. Нумерація наступних версій однакова для обох платформ.
  
У 2001 році компанія Compaq , незадовго до злиття з HP , оголосила про початок робіт з портированию системи на щойно з'явилася 64 - розрядну платформу Intel Itanium . Портування здійснювалося на основі вихідного коду і бібліотек версії OpenVMS для Alpha. Використання вихідного коду OpenVMS для Alpha в якості основи пояснювалося тим , що він був 64 - розрядним і, отже , набагато більш підготовленим до портированию , ніж вихідний код оригінальної OpenVMS для VAX .
+
У 2001 році компанія Compaq , незадовго до злиття з HP , оголосила про початок робіт з портування системи на 64 - розрядну платформу Intel Itanium . Портування здійснювалося на основі вихідного коду і бібліотек версії OpenVMS для Alpha. Використання вихідного коду OpenVMS для Alpha в якості основи пояснювалося тим , що він був 64 - розрядним і, отже , набагато більш підготовленим до портування , ніж вихідний код оригінальної OpenVMS для VAX .
  
На відміну від портирования з VAX на Alpha , коли у вихідний код версії 5.4 для VAX було внесено безліч змін і результат сильно відрізнявся від оригіналу , версії для Alpha і Itanium засновані на загальному вихідному коді і використовують однаковий інструментарій .
+
На відміну від портування з VAX на Alpha , коли у вихідний код версії 5.4 для VAX було внесено безліч змін і результат сильно відрізнявся від оригіналу , версії для Alpha і Itanium засновані на загальному вихідному коді і використовують однаковий інструментарій .
  
OpenVMS/I64 V8.0 - перша предпромишленная версія , випущена в червні 2003 року.
+
OpenVMS/I64 V8.0 - перша версія , випущена в червні 2003 року.
  
 
OpenVMS V8.2 - перша промислова версія для Itanium , випущена в січні 2005 року. Також доступна для платформи Alpha.
 
OpenVMS V8.2 - перша промислова версія для Itanium , випущена в січні 2005 року. Також доступна для платформи Alpha.
Рядок 46: Рядок 44:
 
OpenVMS V8.4 , випущена в червні 2010 року як для Alpha , так і для Itanium.
 
OpenVMS V8.4 , випущена в червні 2010 року як для Alpha , так і для Itanium.
  
Наприкінці 1980 -х в DEC в рамках проекту Emerald велися роботи з портированию OpenVMS на архітектуру x86 , але проект був закритий з фінансових міркувань. Незгідний з рішенням менеджменту керівник розробки Девід Катлер ( David Cutler ) перейшов в Microsoft , де зайнявся розробкою Windows NT. Існує думка , що в основі Windows NT лежать концепції і системні рішення, засновані на досягненнях OpenVMS .
+
Наприкінці 1980 -х в DEC в рамках проекту Emerald велися роботи з портування OpenVMS на архітектуру x86 , але проект був закритий з фінансових міркувань. Незгідний з рішенням менеджменту керівник розробки Девід Катлер ( David Cutler ) перейшов в Microsoft , де зайнявся розробкою Windows NT. Існує думка , що в основі Windows NT лежать концепції і системні рішення, засновані на досягненнях OpenVMS .
  
 
Існує проект FreeVMS по створенню під ліцензією GPL клона OpenVMS для платформи x86. На 2009 рік проект знаходиться на початковій стадії.
 
Існує проект FreeVMS по створенню під ліцензією GPL клона OpenVMS для платформи x86. На 2009 рік проект знаходиться на початковій стадії.
Рядок 52: Рядок 50:
 
= Функціональність =
 
= Функціональність =
  
OpenVMS є багато користувачів, багатозадачного ОС з підтримкою віртуальної пам'яті. Вона призначена для роботи в режимі реального часу , поділу часу , пакетної обробки та обробки транзакцій. Завдяки можливості створення кластерів з декількох комп'ютерів (до 96 в одному кластері ) OpenVMS дозволяє створювати високомасштабіруемие системи . OpenVMS допускає використання віконного інтерфейсу DECWindows , сумісного з X Window System .
+
OpenVMS є багатокористувацькою, багатозадачною ОС з підтримкою віртуальної пам'яті. Вона призначена для роботи в режимі реального часу , поділу часу , пакетної обробки та обробки транзакцій. Завдяки можливості створення кластерів з декількох комп'ютерів (до 96 в одному кластері ) OpenVMS дозволяє створювати високомасштабовані системи . OpenVMS допускає використання віконного інтерфейсу DECWindows , сумісного з X Window System .
  
Багатозадачність в OpenVMS спирається на потоки ( kernel threads ) . Потік складається з індивідуального адресного простору , регістрів , що утворюють його контекст , і коду - виконуваного образу. Контекст ідентифікує потік і описує його поточний стан , а виконуваний образ складається з системних і користувальницьких програм ( компільованих і зібраних ) . Кожен процес може містити до 16 потоків ( kernel threads ) , які є об'єктом управління планувальника . Кількість же користувальницьких ( user level threads ) потоків виконання обмежено тільки ресурсами конкретної системи . Максимальне число підтримуваних паралельних процесів в OpenVMS - 16 384 на кожен вузол. Процесорний час розподіляється між потоками відповідно до пріоритетів , яких налічується 64 . Пріоритети від 0 до 15 призначаються процесам з розділяються часом або некритичним до часу виконання, діапазон від 16 до 63 призначений для процесів реального часу. Процеси реального часу отримують квант ( quantum ) процесорного часу відразу , як тільки воно потрібно ( відповідно до пріоритетом і статусом процесу) , звичайні процеси отримують обчислювальні ресурси тільки тоді , коли ними не користуються процеси реального часу. У OpenVMS процесу можна призначити пріоритет вище , ніж у процесів ядра системи . Є також механізм ( pixscan ) , який запобігає блокування управління системою високопріоритетними процесами , тобто, наприклад , процес з пріоритетом в межах 4 гарантовано отримає квант процесорного часу , хоча і зі значною затримкою .
+
Багатозадачність в OpenVMS спирається на потоки ( kernel threads ) . Потік складається з індивідуального адресного простору , регістрів , що утворюють його контекст , і коду - виконуваного образу. Контекст ідентифікує потік і описує його поточний стан , а виконуваний образ складається з системних і користувальницьких програм ( компільованих і зібраних ) . Кожен процес може містити до 16 потоків ( kernel threads ) , які є об'єктом управління планувальника . Кількість же користувальницьких ( user level threads ) потоків виконання обмежено тільки ресурсами конкретної системи . Максимальне число підтримуваних паралельних процесів в OpenVMS - 16 384 на кожен вузол. Процесорний час розподіляється між потоками відповідно до пріоритетів , яких налічується 64 . Пріоритети від 0 до 15 призначаються процесам з розділяються часом або некритичним до часу виконання, діапазон від 16 до 63 призначений для процесів реального часу. Процеси реального часу отримують квант ( quantum ) процесорного часу відразу , як тільки воно потрібно ( відповідно до пріоритету і статусу процесу) , звичайні процеси отримують обчислювальні ресурси тільки тоді , коли ними не користуються процеси реального часу. У OpenVMS процесу можна призначити пріоритет вище , ніж у процесів ядра системи . Є також механізм ( pixscan ) , який запобігає блокування управління системою високопріоритетними процесами , тобто, наприклад , процес з пріоритетом в межах 4 гарантовано отримає квант процесорного часу , хоча і зі значною затримкою .
  
 
У OpenVMS використовуються файлові системи Files - 11 ( ODS - 1 , ODS - 2 , ODS - 5 ) , ISO 9660 , FAT , NFS , SMB і Spiralog .
 
У OpenVMS використовуються файлові системи Files - 11 ( ODS - 1 , ODS - 2 , ODS - 5 ) , ISO 9660 , FAT , NFS , SMB і Spiralog .
Рядок 79: Рядок 77:
 
* Сертифікація системи за рівнем C2 (аж до B1 ) по Orange Book .
 
* Сертифікація системи за рівнем C2 (аж до B1 ) по Orange Book .
 
* Реалізація розподіленого менеджера блокувань ( DLM , Distributed Lock Manager ) .
 
* Реалізація розподіленого менеджера блокувань ( DLM , Distributed Lock Manager ) .
* Кластери ( cluster ) - об'єднання декількох систем в єдиний комплекс , що розділяє ресурси ( shared resources ) , з розподілом навантаження ( load balancing ) . Варто зауважити , дослідницька компанія Gartner Group Inc . привласнила кластеру VMS звання « Король кластерів» ( King of Clusters ) .
+
* Кластери ( cluster ) - об'єднання декількох систем в єдиний комплекс , що розділяє ресурси ( shared resources ) , з розподілом навантаження ( load balancing ) . Варто зауважити , дослідницька компанія Gartner Group Inc . присудила кластеру VMS звання « Король кластерів» ( King of Clusters ) .
  
 
= Безпека =
 
= Безпека =
  
 
[[Image:600px-DEC Alpha 21-35023-13 J40793-28 top.jpg|thumb|500px|DEC Alpha]]
 
[[Image:600px-DEC Alpha 21-35023-13 J40793-28 top.jpg|thumb|500px|DEC Alpha]]
Засоби захисту інформації закладені в OpenVMS з моменту створення , так як в багатокористувацьких системах розмежування прав користувачів - одне з першочергових завдань . У версіях для VAX передбачені чотири режими роботи процесора , що забезпечують різні рівні доступу (після реєстрації користувача в системі процесор переходить у відповідний режим для виконання його завдань ) . Не володіючи належними повноваженнями , просто фізично неможливо запустити , наприклад , програму - зломщик .
+
Засоби захисту інформації закладені в OpenVMS з моменту створення , так як в багатокористувацьких системах розмежування прав користувачів - одне з першочергових завдань . У версіях для VAX передбачені чотири режими роботи процесора , що забезпечують різні рівні доступу (після реєстрації користувача в системі процесор переходить у відповідний режим для виконання його завдань ) . Не володіючи належними повноваженнями , просто фізично неможливо запустити , наприклад , програму - табщик .
 
OpenVMS своєму розпорядженні розвинені засобами контролю за паролями :
 
OpenVMS своєму розпорядженні розвинені засобами контролю за паролями :
 
* перевіркою стандартних характеристик (термін дії пароля , довжина , чи використовувався пароль раніше);
 
* перевіркою стандартних характеристик (термін дії пароля , довжина , чи використовувався пароль раніше);
Рядок 92: Рядок 90:
 
* можливість завдання специфічних вимог до « вмісту пароля ».
 
* можливість завдання специфічних вимог до « вмісту пароля ».
  
Контролюється доступ до всіх системних об'єктів : томам , пристроїв , файлів , черг і т. д. Кожному класу об'єктів можна за замовчуванням призначити рівень захисту при його створенні. Файл отримує рівень захисту або від своєї попередньої версії , або від його створив процесу , або за допомогою спеціального ACL ( Access Control List ) . При бажанні файл може бути видалений повністю ( erase - on - delete ) без можливості його відновлення . Також OpenVMS забезпечує аудит ( тобто , реєстрацію подій від монітора безпеки) реєстрації або виходу з системи , спроби підбору пароля ( Intrusion Detection ) , будь-яких типів операцій із заданими об'єктами (або класами об'єктів ) , будь-яких змін параметрів системи , будь-яких змін, що стосуються політики захисту інформації , оперативне інформування системного адміністратора , операторського штату .
+
Контролюється доступ до всіх системних об'єктів : томам , пристроїв , файлів , черг і т. д. Кожному класу об'єктів можна за замовчуванням призначити рівень захисту при його створенні. Файл отримує рівень захисту або від своєї попередньої версії , або від його батьківського процесу , або за допомогою спеціального ACL ( Access Control List ) . При бажанні файл може бути видалений повністю ( erase - on - delete ) без можливості його відновлення . Також OpenVMS забезпечує аудит ( тобто , реєстрацію подій від монітора безпеки) реєстрації або виходу з системи , спроби підбору пароля ( Intrusion Detection ) , будь-яких типів операцій із заданими об'єктами (або класами об'єктів ) , будь-яких змін параметрів системи , будь-яких змін, що стосуються політики захисту інформації , оперативне інформування системного адміністратора , операторського штату .
  
 
Всі версії OpenVMS відповідають вимогам класу C2 « Критеріїв визначення безпеки комп'ютерних систем» , « Orange Book » і сертифіковані Міністерством оборони США . Спеціальна версія системи , SEVMS ( SecureVMS ) , має підвищений рівень захисту і сертифікується по класу B1.
 
Всі версії OpenVMS відповідають вимогам класу C2 « Критеріїв визначення безпеки комп'ютерних систем» , « Orange Book » і сертифіковані Міністерством оборони США . Спеціальна версія системи , SEVMS ( SecureVMS ) , має підвищений рівень захисту і сертифікується по класу B1.
  
На міжнародному фестивалі хакерів DEFCON 9 ( Лас -Вегас , 2001 рік) світове хакерської співтовариство визнало OpenVMS невразливою для злому. Уразливість в finger (переповнення при обробці. Plan , finger там запускається з правами SYSTEM , що дозволяє на VAX довільно поміняти обліковий запис і отримати всі права) і помилка при перевищенні довжини рядка команди ( в 511 символів , працює на Alpha і дозволяє запускати довільний код в процесах з привілеями SYSTEM , FIS_IO , OPER і т. п. ) були оперативно виправлені і є проблемами прямолінійного перенесення системних UNIX- утиліт без належної переробки під стандарти безпеки OpenVMS .
+
На міжнародному фестивалі хакерів DEFCON 9 ( Лас -Вегас , 2001 рік) світове хакерське співтовариство визнало OpenVMS невразливою для злому. Уразливість в finger (переповнення при обробці. Plan , finger там запускається з правами SYSTEM , що дозволяє на VAX довільно поміняти обліковий запис і отримати всі права) і помилка при перевищенні довжини рядка команди ( в 511 символів , працює на Alpha і дозволяє запускати довільний код в процесах з привілеями SYSTEM , FIS_IO , OPER і т. п. ) були оперативно виправлені і є проблемами прямолінійного перенесення системних UNIX- утиліт без належної переробки під стандарти безпеки OpenVMS .
  
 
= Ліцензії та поширення =
 
= Ліцензії та поширення =
Рядок 109: Рядок 107:
 
Під управлінням OpenVMS працює 14 лінія паризького метрополітену та управління залізничним рухом в Індії.
 
Під управлінням OpenVMS працює 14 лінія паризького метрополітену та управління залізничним рухом в Індії.
  
У школі № 1 міста Воронеж система з AlphaServer під управлінням OpenVMS і 30 терміналів використовується c 1997 роки навчання школярів інформатики та програмування .
+
У школі № 1 міста Воронеж система з AlphaServer під управлінням OpenVMS і 30 терміналів використовуються c 1997 року для навчання школярів інформатики та програмування .
  
 
У першому в Росії операторі стільникового зв'язку компанії «Дельта Телеком» кластер під управлінням OpenVMS , що включає DEC Alpha і HP Integrity , є « серцем » для бізнес -процесів.
 
У першому в Росії операторі стільникового зв'язку компанії «Дельта Телеком» кластер під управлінням OpenVMS , що включає DEC Alpha і HP Integrity , є « серцем » для бізнес -процесів.

Поточна версія на 21:42, 12 грудня 2013

Вікно VMS

Розробник- DEC , Compaq , HP

Сімейство ОС- Сімейство ОС DEC

Остання версія- 8.4 - 21 червня 2010

Тип ядра- Монолітне з модулями

Ліцензія- Закрита

Стан- Підтримка припинена

OpenVMS (англ. Open Virtual Memory System , або просто VMS) - пропріетарна серверна операційна система , розроблена в другій половині 1970 - х років компанією Digital Equipment Corporation для серії комп'ютерів VAX . Пізніше портована на платформи DEC Alpha і Intel Itanium . Зараз належить Hewlett- Packard. Застосовується для побудови відмовостійких систем високої готовності і mission - critical застосувань. Серед російських замовників OpenVMS переважають оборонні структури та банки , телекомунікаційні компанії , підприємства безперервного циклу (АЕС) .

Історія

У квітні 1975 року DEC оголосила про початок проекту з розробки апаратної платформи під назвою Star , яка дозволила б розширити функціональність існуючого PDP- 11 для роботи з 32 -бітними адресами віртуальної пам'яті. Супутній проект з розробки програмного забезпечення , під назвою Starlet , був розпочатий у червні 1975 року. В рамках проекту планувалося розробити для сімейства Star абсолютно нову ОС , засновану на RSX - 11 , операційній системі для 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 мав жорсткий диск RD32 ємністю 40 Мб і всього 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 .

Платформи

Портування на платформу Alpha зажадало створення окремих гілок вихідного коду для 32- розрядної і 64- розрядної архітектур . У 1992 році побачила світ перша версія OpenVMS для систем Alpha AXP , названа OpenVMS / AXP V1.0 . Рішення використовувати нумерацію що починається з 1.x для версій OpenVMS / AXP послугувало причиною плутанини для деяких клієнтів і надалі вона перестала використовуватися .

У 1994 році з виходом OpenVMS 6.1 було досягнуто рівність у можливостях і номерах версій між варіантами для VAX і Alpha. Нумерація наступних версій однакова для обох платформ.

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

На відміну від портування з VAX на Alpha , коли у вихідний код версії 5.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.

OpenVMS V8.3 - 1h1 , випущена в жовтні 2007 року тільки для Itanium. Додана підтримка чіпсетів серії sx2000 .

OpenVMS V8.4 , випущена в червні 2010 року як для Alpha , так і для Itanium.

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

Існує проект FreeVMS по створенню під ліцензією GPL клона OpenVMS для платформи x86. На 2009 рік проект знаходиться на початковій стадії.

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

OpenVMS є багатокористувацькою, багатозадачною ОС з підтримкою віртуальної пам'яті. Вона призначена для роботи в режимі реального часу , поділу часу , пакетної обробки та обробки транзакцій. Завдяки можливості створення кластерів з декількох комп'ютерів (до 96 в одному кластері ) OpenVMS дозволяє створювати високомасштабовані системи . OpenVMS допускає використання віконного інтерфейсу DECWindows , сумісного з X Window System .

Багатозадачність в OpenVMS спирається на потоки ( kernel threads ) . Потік складається з індивідуального адресного простору , регістрів , що утворюють його контекст , і коду - виконуваного образу. Контекст ідентифікує потік і описує його поточний стан , а виконуваний образ складається з системних і користувальницьких програм ( компільованих і зібраних ) . Кожен процес може містити до 16 потоків ( kernel threads ) , які є об'єктом управління планувальника . Кількість же користувальницьких ( user level threads ) потоків виконання обмежено тільки ресурсами конкретної системи . Максимальне число підтримуваних паралельних процесів в OpenVMS - 16 384 на кожен вузол. Процесорний час розподіляється між потоками відповідно до пріоритетів , яких налічується 64 . Пріоритети від 0 до 15 призначаються процесам з розділяються часом або некритичним до часу виконання, діапазон від 16 до 63 призначений для процесів реального часу. Процеси реального часу отримують квант ( quantum ) процесорного часу відразу , як тільки воно потрібно ( відповідно до пріоритету і статусу процесу) , звичайні процеси отримують обчислювальні ресурси тільки тоді , коли ними не користуються процеси реального часу. У OpenVMS процесу можна призначити пріоритет вище , ніж у процесів ядра системи . Є також механізм ( pixscan ) , який запобігає блокування управління системою високопріоритетними процесами , тобто, наприклад , процес з пріоритетом в межах 4 гарантовано отримає квант процесорного часу , хоча і зі значною затримкою .

У OpenVMS використовуються файлові системи Files - 11 ( ODS - 1 , ODS - 2 , ODS - 5 ) , ISO 9660 , FAT , NFS , SMB і Spiralog . За мовою командного рядка і файлової системі OpenVMS є спадкоємицею RSX -11 і RT- 11 .

У OpenVMS існують різні реалізації мережевих стеків загального призначення :

  • DECnet , для роботи в мережах , що використовують пропрієтарні мережеві протоколи розроблені Digital ; частинами DECNet є DEC LAT ( Local Area Transport ) , DEC MOP ( Maintenance Operation Protocol ) . В даний під назвою DECNet існують * DECNet IV ( Phase IV ) і DECNet OSI ( раніше носив назви DECNet Plus , DECNet Phase V ) .
  • DECnet OSI , реалізація підтримки архітектури мереж OSI ( Open Standard Interconnection ) від Digital.
  • X.25 , для побудови мереж X.25 .
  • DEC SS7 , реалізація від Digital стека протоколів CCSS7 ( Common Channel Signaling System 7 , Загальноканальна сигналізація 7 ) .
  • TCPIP , реалізація стека протоколів TCP / IP від Digital ( раніше носила назву UCX - Digital Ultrix Connection ) .
  • TCPware - TCP , реалізація стека протоколів TCP / IP від компанії Process Software LLC .
  • MultiNet , альтернативна реалізація стека протоколів TCP / IP від компанії Process Software LLC .
  • CMU -IP , вільно розповсюджувана версія стека протоколів TCP / IP , розроблена в Університеті Карнегі - Меллона .

У OpenVMS вперше стали комерційно доступні технології , які в даний час є стандартними в серверних операційних системах :

  • Вбудована підтримка мереж ( спочатку DECnet IV і пізніше TCP / IP ) і DECnet V ( стек протоколів OSI).
  • Симетрична , асиметрична і NUMA - багатопроцесорність .
  • Розподілена файлова система DFS .
  • RMS ( Record Management Service ) , що реалізує доступ до файлів за методами ISAM ( Indexed - Sequential Access Method ) для реалізації програм, що вимагають функціональність бази даних.
  • Підтримка різних мов програмування та реалізація інтерфейсу , який дозволяє пов'язувати об'єктні модулі , отримані шляхом компіляції програм на різних мовах високого рівня).
  • Розширювана мова командної оболонки DCL .
  • Поділ апаратних засобів процесорів для підтримки багатопоточності .
  • Сертифікація системи за рівнем C2 (аж до B1 ) по Orange Book .
  • Реалізація розподіленого менеджера блокувань ( DLM , Distributed Lock Manager ) .
  • Кластери ( cluster ) - об'єднання декількох систем в єдиний комплекс , що розділяє ресурси ( shared resources ) , з розподілом навантаження ( load balancing ) . Варто зауважити , дослідницька компанія Gartner Group Inc . присудила кластеру VMS звання « Король кластерів» ( King of Clusters ) .

Безпека

DEC Alpha

Засоби захисту інформації закладені в OpenVMS з моменту створення , так як в багатокористувацьких системах розмежування прав користувачів - одне з першочергових завдань . У версіях для VAX передбачені чотири режими роботи процесора , що забезпечують різні рівні доступу (після реєстрації користувача в системі процесор переходить у відповідний режим для виконання його завдань ) . Не володіючи належними повноваженнями , просто фізично неможливо запустити , наприклад , програму - табщик . OpenVMS своєму розпорядженні розвинені засобами контролю за паролями :

  • перевіркою стандартних характеристик (термін дії пароля , довжина , чи використовувався пароль раніше);
  • генерацією випадкових паролів;
  • перевіркою на наявність в паролі загальновживаних слів;
  • використання другого пароля ;
  • можливість завдання специфічних вимог до « вмісту пароля ».

Контролюється доступ до всіх системних об'єктів : томам , пристроїв , файлів , черг і т. д. Кожному класу об'єктів можна за замовчуванням призначити рівень захисту при його створенні. Файл отримує рівень захисту або від своєї попередньої версії , або від його батьківського процесу , або за допомогою спеціального ACL ( Access Control List ) . При бажанні файл може бути видалений повністю ( erase - on - delete ) без можливості його відновлення . Також OpenVMS забезпечує аудит ( тобто , реєстрацію подій від монітора безпеки) реєстрації або виходу з системи , спроби підбору пароля ( Intrusion Detection ) , будь-яких типів операцій із заданими об'єктами (або класами об'єктів ) , будь-яких змін параметрів системи , будь-яких змін, що стосуються політики захисту інформації , оперативне інформування системного адміністратора , операторського штату .

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

На міжнародному фестивалі хакерів DEFCON 9 ( Лас -Вегас , 2001 рік) світове хакерське співтовариство визнало OpenVMS невразливою для злому. Уразливість в finger (переповнення при обробці. Plan , finger там запускається з правами SYSTEM , що дозволяє на VAX довільно поміняти обліковий запис і отримати всі права) і помилка при перевищенні довжини рядка команди ( в 511 символів , працює на Alpha і дозволяє запускати довільний код в процесах з привілеями SYSTEM , FIS_IO , OPER і т. п. ) були оперативно виправлені і є проблемами прямолінійного перенесення системних UNIX- утиліт без належної переробки під стандарти безпеки OpenVMS .

Ліцензії та поширення

Пропрієтарна , поширювалася головним чином з серверами. У 1997 році відкрита програма підтримки ентузіастів , що використовують OpenVMS . За цією програмою надаються коди ліцензій для некомерційного використання ентузіастами . HP , яка купила Compaq (яка раніше купила Digital) - пропонує програму для освітніх установ.

Застосовується для побудови відмовостійких систем високої готовності і mission - critical застосувань. Під управлінням OpenVMS ( на платформі VAX ) працює лінія випуску процесорів на фабриці Intel в Ізраїлі.

Серед російських замовників OpenVMS переважають оборонні структури та банки , телекомунікаційні компанії , підприємства безперервного циклу (АЕС) . У банках кластери під управлінням OpenVMS використовуються в якості серверів баз даних (як правило , Oracle) . В одному з регіональних відділень Ощадбанку РФ під OpenVMS працює додаток, що забезпечує всю роботу банка.До 2005 OpenVMS широко застосовувалася для роботи з міжнародною системою міжбанківських транзакцій SWIFT , ПО - SWIFT ST400 . Це було пов'язано як з прагненням найбільш надійно здійснювати транзакції , так і з тим , що SWIFT спочатку розроблялася під OpenVMS .

Під управлінням OpenVMS працює 14 лінія паризького метрополітену та управління залізничним рухом в Індії.

У школі № 1 міста Воронеж система з AlphaServer під управлінням OpenVMS і 30 терміналів використовуються c 1997 року для навчання школярів інформатики та програмування .

У першому в Росії операторі стільникового зв'язку компанії «Дельта Телеком» кластер під управлінням OpenVMS , що включає DEC Alpha і HP Integrity , є « серцем » для бізнес -процесів.