IBM MVS¶
IBM MVS (Multiple Virtual Storage, «множественная виртуальная память») — операционная система для мейнфреймов IBM семейства System/370 и последующих поколений, разработанная корпорацией IBM. MVS является одной из наиболее долгоживущих и влиятельных операционных систем в истории вычислительной техники, заложившей основы для современных z/OS. Система была анонсирована в 1974 году и стала преемницей OS/360 и OS/VS2 (SVS).
¶История
¶Предпосылки создания
В конце 1960-х годов IBM столкнулась с ограничениями операционной системы OS/360, которая не могла эффективно использовать растущие объёмы оперативной памяти и обеспечивать многозадачность для сложных вычислительных нагрузок. В 1972 году IBM выпустила OS/VS2 (SVS — Single Virtual Storage), которая ввела концепцию виртуальной памяти, но имела единое адресное пространство для всех задач, что создавало узкие места.
¶Разработка и выпуск
В 1974 году IBM представила MVS (Multiple Virtual Storage) как часть линейки OS/VS2. Основным нововведением стала поддержка нескольких независимых виртуальных адресных пространств (до 16 в первых версиях), что позволяло изолировать задачи друг от друга и повысить общую производительность. Первая версия, MVS/370 (также известная как OS/VS2 Release 2), работала на процессорах System/370.
¶Эволюция
MVS прошла несколько этапов развития:
- MVS/370 (1974–1981): базовая версия с поддержкой до 16 адресных пространств и 16 МБ физической памяти.
- MVS/SP (1981–1988): System Product — улучшенная версия с поддержкой XA (Extended Architecture), увеличившей адресное пространство до 2 ГБ и количество адресных пространств до 255.
- MVS/ESA (1988–1990): Enterprise Systems Architecture — добавлена поддержка до 16 ГБ адресного пространства, введены расширенные возможности управления памятью и подсистемы хранения данных.
- OS/390 (1995): ребрендинг MVS/ESA с интеграцией дополнительных компонентов, таких как UNIX System Services (POSIX-совместимая подсистема).
- z/OS (2000): прямое продолжение OS/390, сохранившее совместимость с MVS и использующееся на современных мейнфреймах IBM Z.
¶Архитектура и ключевые особенности
¶Виртуальная память
Основной принцип MVS — разделение физической памяти на независимые виртуальные адресные пространства. Каждое адресное пространство (до 16 в ранних версиях, до 255 в MVS/XA) изолировано и содержит собственную область кода, данных и системных структур. Это позволяет запускать множество задач одновременно без взаимного влияния.
¶Управление задачами
MVS использует многозадачность на основе приоритетов. Система поддерживает следующие типы задач:
- Задачи (Tasks): единицы выполнения, управляемые диспетчером (Dispatcher).
- Подзадачи (Subtasks): дочерние процессы в рамках задачи.
- Системные задачи: обслуживание ввода-вывода, управление памятью, планирование.
¶Подсистемы
MVS построена на модульной архитектуре с несколькими ключевыми подсистемами:
- JES (Job Entry Subsystem): управление пакетными заданиями. JES2 и JES3 — основные варианты, отвечающие за приём, обработку и вывод заданий.
- TCAM (Telecommunications Access Method): управление телекоммуникационными соединениями (устаревшая).
- VTAM (Virtual Telecommunications Access Method): более современная подсистема для сетевого взаимодействия (SNA).
- RACF (Resource Access Control Facility): система безопасности, управляющая доступом к ресурсам.
- DFSMS (Data Facility Storage Management Subsystem): управление хранением данных на дисках и лентах.
¶Файловая система
MVS использует иерархическую файловую систему, основанную на наборах данных (Data Sets). Основные типы наборов данных:
- Sequential: последовательные файлы.
- PDS (Partitioned Data Set): библиотеки с несколькими членами (аналог каталогов).
- VSAM (Virtual Storage Access Method): индексированные и прямые наборы данных.
- HFS (Hierarchical File System): поддержка UNIX-подобной файловой системы (с OS/390).
¶Применение
¶Корпоративные вычисления
MVS и её наследники (z/OS) традиционно используются в крупных корпорациях, банках, страховых компаниях, государственных учреждениях и организациях, где требуется высокая надёжность, масштабируемость и безопасность. Основные области применения:
- Обработка транзакций (CICS, IMS).
- Пакетная обработка данных (зарплата, отчёты, биллинг).
- Хранение и управление большими объёмами данных (базы данных DB2, IMS).
- Выполнение критически важных приложений с требованием 24/7.
¶Научные и исследовательские задачи
В 1970–1980-х годах MVS использовалась в университетах и исследовательских центрах для моделирования, расчётов и обработки данных. С развитием UNIX и Linux её роль в этой сфере снизилась.
¶Критика и ограничения
¶Сложность администрирования
MVS традиционно считается сложной в настройке и эксплуатации. Требуется квалифицированный персонал, знакомый с JCL (Job Control Language), TSO (Time Sharing Option) и системными утилитами. Обучение специалистов занимает годы.
¶Закрытость и стоимость
IBM долгое время сохраняла проприетарный характер MVS, что ограничивало её распространение. Лицензирование и аппаратное обеспечение (мейнфреймы) стоили очень дорого, делая систему доступной только крупным организациям.
¶Устаревшие подходы
С появлением распределённых систем, UNIX и Linux MVS стала восприниматься как устаревшая платформа. Критики отмечали:
- Отсутствие современного графического интерфейса (основной интерфейс — командная строка TSO).
- Ограниченную поддержку открытых стандартов (до появления UNIX System Services).
- Зависимость от проприетарного оборудования IBM.
¶Наследие и современность
¶Влияние на другие системы
MVS оказала значительное влияние на развитие операционных систем:
- Концепция виртуальной памяти и изолированных адресных пространств стала стандартом для многих ОС (Windows NT, Linux).
- Подсистема JES повлияла на системы пакетной обработки в UNIX (at, cron, batch).
- Модель безопасности RACF стала прообразом для многих корпоративных систем управления доступом.
¶Современное состояние
MVS в чистом виде больше не используется. Её прямым наследником является z/OS, которая сохраняет обратную совместимость с приложениями, написанными для MVS в 1970-х годах. По состоянию на 2025 год z/OS остаётся одной из самых надёжных и безопасных операционных систем, обслуживающей критически важные транзакции в финансовом секторе, государственном управлении и других отраслях. Оценки IBM показывают, что на мейнфреймах под управлением z/OS обрабатывается более 70% всех корпоративных данных в мире.
¶Интересные факты
- MVS была одной из первых операционных систем, поддерживающих симметричную многопроцессорность (SMP).
- В 1980-х годах IBM выпустила версию MVS для учебных заведений — MVS/370 с ограниченной функциональностью, которая использовалась в университетах для обучения студентов.
- Код MVS написан на ассемблере System/370 и частично на PL/I. В z/OS постепенно внедряются компоненты на C и C++.
- MVS поддерживала работу с магнитными лентами как основным носителем данных вплоть до 1990-х годов.
¶Источники
- IBM Corporation. «OS/VS2 MVS System Programming Library». IBM, 1974.
- IBM Corporation. «MVS/ESA System Product: Introduction and Planning Guide». IBM, 1988.
- IBM Corporation. «z/OS Concepts». IBM Redbooks, 2020.
- Deitel, H. M. «An Introduction to Operating Systems». Addison-Wesley, 1984.
- Gray, J. «The Evolution of MVS». IBM Systems Journal, 1985.