ВМ (операционная система)

Семейство операционных систем IBM
Операционная система
г/ВМ
РазработчикИБМ
Семейство ОССемейство ВМ
Рабочее состояниеТекущий
Исходная модель1972–1986 Открытый исходный код , 1977–настоящее время Закрытый исходный код
Первоначальный выпуск1972 ; 53 года назад ( 1972 )
Последний релизIBM z/VM V7.3 / 16 сентября 2022 г. ; 2 года назад ( 2022-09-16 )
Маркетинговая цельМейнфреймовые компьютеры IBM
Доступно вАнглийский
ПлатформыСистема/370 , Система/390 , zSeries , IBM zEnterprise System
Лицензия1972–1981 Общественное достояние , 1976–настоящее время Право собственности
Официальный сайтwww.vm.ibm.com
Экран входа по умолчанию на VM/370 Release 6

VM (часто: VM/CMS ) — семейство операционных систем виртуальных машин IBM , используемых на мэйнфреймах IBM System/370 , System/390 , zSeries , System z и совместимых системах, включая эмулятор Hercules для персональных компьютеров.

Дизайн

Сердцем архитектуры VM является управляющая программа или гипервизор, сокращенно CP, VM-CP и иногда, двусмысленно, VM. Она работает на физическом оборудовании и создает среду виртуальной машины . VM-CP обеспечивает полную виртуализацию физической машины, включая все операции ввода-вывода и другие привилегированные операции. Она выполняет совместное использование ресурсов системы, включая управление устройствами, диспетчеризацию, управление виртуальным хранилищем и другие традиционные задачи операционной системы. Каждому пользователю VM предоставляется отдельная виртуальная машина, имеющая собственное адресное пространство , виртуальные устройства и т. д., и которая способна запускать любое программное обеспечение, которое может быть запущено на автономной машине. Данный мэйнфрейм VM обычно запускает сотни или тысячи экземпляров виртуальных машин. VM-CP начал свою жизнь как CP-370, повторная реализация CP-67 , которая сама является повторной реализацией CP-40 .

Внутри каждой виртуальной машины работает другая операционная система, гостевая операционная система . Это может быть:

  • CMS ( Conversational Monitor System , переименованная из Cambridge Monitor System of CP/CMS ). Большинство виртуальных машин работают под управлением CMS, легкой однопользовательской операционной системы. Ее интерактивная среда сопоставима со средой однопользовательского ПК, включая файловую систему, службы программирования, доступ к устройствам и обработку командной строки. (Хотя более раннюю версию CMS немилосердно называли « CP/M на мэйнфрейме», это сравнение является анахронизмом; автор CP/M, Гэри Килдалл , был опытным пользователем CMS.)
  • GCS ( Group Control System ), которая обеспечивает ограниченную симуляцию API MVS. IBM изначально предоставила GCS для запуска VTAM без сервисной ОС/ виртуальной машины VS1 и VTAM Communications Network Application (VCNA). RSCS V2 также работала под GCS.
  • Основная операционная система. Основные операционные системы IBM (например, семейства MVS и DOS/VSE , OS/VS1 , TSS/370 или другой уровень самой VM/370 (см. ниже)) можно загружать и запускать без изменений. Гипервизор VM рассматривает гостевые операционные системы как прикладные программы с исключительными привилегиями — он не позволяет им напрямую использовать привилегированные инструкции (те, которые позволили бы приложениям захватить всю систему или ее значительную часть), но имитирует привилегированные инструкции от их имени. Большинство операционных систем мэйнфреймов завершают обычное приложение, которое пытается узурпировать привилегии операционной системы. Гипервизор VM может имитировать несколько типов консольных терминалов для гостевой операционной системы, таких как печатный линейный режим 3215, графическое семейство 3270 и интегрированная консоль на более новых машинах System/390 и System Z. Другие пользователи затем могут получить доступ к работающим виртуальным машинам с помощью команды DIAL на экране входа в систему, которая подключит их терминал к первому доступному эмулируемому устройству 3270 или к первому доступному устройству 2703, если пользователь набирает номер с терминала пишущей машинки.
  • Другая копия VM. Экземпляр VM второго уровня может быть полностью виртуализирован внутри виртуальной машины. Так выполняется разработка и тестирование VM (VM второго уровня может потенциально реализовать другую виртуализацию оборудования). Эта техника использовалась для разработки программного обеспечения S/370 до того, как стало доступно оборудование S/370, и она продолжает играть роль в разработке нового оборудования в IBM. В литературе приводятся практические примеры виртуализации на пять уровней в глубину . [1] Уровни VM ниже верхнего также рассматриваются как приложения, но с исключительными привилегиями.
  • Копия версии AIX или Linux для мэйнфрейма . В среде мэйнфрейма эти операционные системы часто работают под управлением виртуальной машины и обрабатываются как другие гостевые операционные системы. (Они также могут работать как «родные» операционные системы на голом оборудовании.) Также существовали недолговечные версии AIX IX/370, а также S/370 и S/390 (AIX/370 и AIX/ESA).
  • Специализированная подсистема VM. Несколько не-CMS систем работают в виртуальных машинах VM-CP, предоставляя пользователям CMS такие услуги, как буферизация, межпроцессное взаимодействие, специализированная поддержка устройств и сетевое взаимодействие. Они работают за кулисами, расширяя услуги, доступные CMS, не добавляя их в программу управления VM-CP. Работая в отдельных виртуальных машинах, они получают ту же защиту безопасности и надежности, что и другие пользователи VM. Вот некоторые примеры:
    • RSCS (Remote Spooling and Communication Subsystem, также известная как VNET) – средства связи и передачи информации между виртуальными машинами и другими системами [2]
    • RACF (Resource Access Control Facility) — система безопасности
    • Общая файловая система (SFS), которая организует общие файлы в дереве каталогов (серверы обычно называются «VMSERVx»).
    • VTAM (метод виртуального телекоммуникационного доступа) – средство, обеспечивающее поддержку сетевой архитектуры систем
    • PVM (VM/Pass-Through Facility) — средство, обеспечивающее удаленный доступ к другим системам виртуальных машин.
    • TCPIP, SMTP, FTPSERVE, PORTMAP, VMNFS – набор сервисных машин, которые обеспечивают сетевое взаимодействие TCP/IP с VM/CMS
    • Db2 Server for VM – система баз данных SQL, серверы часто называются по аналогии с «SQLMACH» и «SQLMSTR».
    • DIRMAINT – упрощенная система управления каталогом пользователей (каталог представляет собой список всех учетных записей в системе, включая конфигурацию виртуального оборудования, пароли пользователей и мини-диски).
    • MUMPS/VM — реализация базы данных и языка программирования MUMPS , которая могла работать в качестве гостевой на VM/370. [3] MUMPS/VM была представлена ​​в 1987 году и прекращена в 1991 году. [4]
  • Написанная или модифицированная пользователем операционная система, например CSS Национального CSS или VPS /VM Бостонского университета .

Версии

Известны следующие версии:

Виртуальная машина Facility/370
VM/370, выпущенная в 1972 году, представляет собой повторную реализацию System/370 более ранней операционной системы CP/CMS .
Продукт программы расширений базовой системы VM/370
VM/BSE (BSEPP) — это усовершенствование VM/370, которое добавляет поддержку большего количества устройств (например, DASD-накопителей с фиксированной блочной архитектурой типа 3370), улучшения в среде CMS (например, улучшенный редактор) и некоторые улучшения стабильности CP.
Продукт программы расширений системы VM/370
VM/SE (SEPP) — это усовершенствование VM/370, включающее возможности VM/BSE, а также несколько дополнительных исправлений и функций.
Виртуальная машина/системный продукт
VM/SP, версия-маяк, заменяет VM/370, VM/BSE и VM/SE. В выпуске 1 добавлены EXEC2 и XEDIT System Product Editor; в выпуске 3 добавлен REXX ; в выпуске 6 добавлена ​​общая файловая система. [5]
Виртуальная машина/системный продукт с высокой производительностью
VM/SP HPO добавляет дополнительную поддержку устройств и функциональность к VM/SP и позволяет определенным машинам S/370, которые могут использовать более 16 МБ реального хранилища, делать это до 64 МБ. Эта версия была предназначена для пользователей, которые будут запускать несколько гостевых систем S/370 одновременно. [6] [7]
Помощь в миграции виртуальной машины/расширенной архитектуры
VM/XA MA призван облегчить миграцию с MVS/370 на MVS/XA, позволяя им работать одновременно на одном и том же процессорном комплексе. [8]
Виртуальная машина/Системное средство расширенной архитектуры
VM/XA SF — это модернизированная версия VM/XA MA с улучшенной функциональностью и производительностью. [9]
Виртуальная машина/Системный продукт расширенной архитектуры
VM/XA SP — это модернизированный VM/XA MA с улучшенной функциональностью и производительностью, предлагаемый в качестве замены VM/SP HPO на машинах с поддержкой S/370-XA. Он включает версию CMS, которая может работать в режиме S/370 или S/370-XA. [10]
Архитектура виртуальных машин/корпоративных систем
VM/ESA предоставляет возможности VM/SP, VM/SP HPO и VM/XA SP. VM/ESA версии 1 может работать в режиме S/370, ESA/370 или ESA/390; она не поддерживает режим S/370 XA. Версия 2 работает только в режиме ESA/390. Версии VM/ESA с поддержкой S/370 на самом деле были собственной отдельной версией от версий VM/ESA ESA/390, поскольку версии S/370 основаны на старой кодовой базе VM/SP HPO, а версии ESA/390 основаны на новой кодовой базе VM/XA. [11]
г/ВМ
z/VM, последняя версия, которая до сих пор широко используется как одно из основных решений полной виртуализации для рынка мэйнфреймов. [ необходима ссылка ] z/VM 4.4 была последней версией, которая могла работать в режиме ESA/390; последующие версии работали только в режиме z/Architecture. [12]

CMS в названии относится к Conversational Monitor System — компоненту продукта, представляющему собой однопользовательскую операционную систему, работающую на виртуальной машине и обеспечивающую разделение времени для разговоров в виртуальной среде.

Интерфейс гипервизора

IBM ввела термин «гипервизор» для 360/65 [13] и позже использовала его для обработчика DIAG CP-67.

Инструкция Diagnose ('83'x — без мнемоники) — это привилегированная инструкция, изначально предназначенная IBM для выполнения «встроенных диагностических функций или других функций, зависящих от модели». [14] IBM перепрофилировала DIAG для «связи между виртуальной машиной и CP». [15] [16] Инструкция содержит два четырехбитных номера регистра, называемых Rx и Ry, которые могут «содержать адреса хранения операндов или коды возврата, передаваемые интерфейсу DIAGNOSE», и двухбайтовый код, «который CP использует для определения того, какую функцию DIAGNOSE выполнять». [15] Доступные функции диагностики включают в себя:

Шестнадцатеричный кодФункция
0000Хранить расширенный идентификационный код
0004Изучите реальное хранилище
0008Функция виртуальной консоли — выполнение команды CP
0018Стандартный DASD ввод/вывод
0020Общий ввод-вывод — выполнение любой допустимой цепочки CCW на ленточном или дисковом устройстве.
003СОбновите каталог VM/370
0058Интерфейс виртуальной консоли 3270 — выполнение полноэкранного ввода-вывода на терминале IBM 3270
0060Определить размер хранилища виртуальной машины
0068Средство связи виртуальных машин ( VMCF )

Когда-то CMS могла работать на голой машине , как настоящая операционная система (хотя такая конфигурация была бы необычной). Теперь она работает только как гостевая ОС под VM. Это связано с тем, что CMS использует интерфейс гипервизора для VM-CP для выполнения операций с файловой системой и запроса других служб VM. Этот интерфейс паравиртуализации :

  • Обеспечивает быстрый переход к VM-CP, позволяющий избежать накладных расходов на полное моделирование.
  • Впервые был разработан как улучшение производительности для версии CP/CMS 2.1, что стало важной ранней вехой в повышении эффективности CP.
  • Использует невиртуализированную, зависящую от модели машинную инструкцию в качестве сигнала между CMS и CP: DIAG (диагностика).

Минидиски

Запуск CMS после входа в систему пользователя MAINT (системного администратора)
Редактор CMS на VM/370, редактирование исходного файла программы COBOL

CMS и другие операционные системы часто предъявляют требования к DASD, намного меньшие, чем размеры реальных томов. По этой причине CP позволяет установке определять виртуальные диски любого размера вплоть до емкости устройства. Для томов CKD минидиск должен быть определен в полных цилиндрах. Минидиск имеет те же атрибуты, что и базовый реальный диск, за исключением того, что он обычно меньше, а начало каждого минидиска отображается на цилиндр или блок 0. К минидиску можно [a] получить доступ с помощью тех же канальных программ , что и к реальному диску.

Мини-диск, инициализированный с помощью файловой системы CMS, называется мини-диском CMS, хотя CMS — не единственная система, которая может их использовать.

Обычной практикой является определение минидисков полного тома для использования такими гостевыми операционными системами, как z/OS, вместо DEDICATEназначения тома определенной виртуальной машине. Кроме того, «ссылки полного пакета» часто определяются для каждого DASD в системе и принадлежат пользователю MAINT. Они используются для резервного копирования системы с помощью программы DASD Dump/Restore, где все содержимое DASD записывается на ленту (или другой DASD) в точности.

Общая файловая система

Вызов компилятора System/360 COBOL на VM/370 CMS, затем загрузка и запуск программы

В современных версиях виртуальных машин большую часть системы можно установить на SFS, а несколько оставшихся мини-дисков — это те, которые абсолютно необходимы для запуска системы и принадлежат машинам-серверам файлового пула.

Пример гостевой операционной системы, не являющейся CMS, работающей под управлением VM/370: DOS/VS Release 34. Теперь система DOS/VS предлагает оператору ввести имя супервизора для продолжения загрузки.

VM/SP Release 6 представила Shared File System [17] , которая значительно улучшила возможности хранения файлов CMS. Файловая система мини-дисков CMS вообще не поддерживает каталоги (папки), однако SFS поддерживает. SFS также вводит более гранулярную безопасность. С помощью мини-дисков CMS система может быть настроена на разрешение или запрет пользователям доступа только для чтения или чтения-записи к диску, но отдельные файлы не могут иметь ту же безопасность. SFS смягчает это и значительно повышает производительность.

SFS предоставляется виртуальными машинами служб. В современной системе VM обычно требуются три: VMSERVR, «машина восстановления», которая на самом деле не обслуживает никаких файлов; VMSERVS, сервер для пула файлов VMSYS; и VMSERVU, сервер для пула файлов VMSYSU (пользователь). [18] Машины сервера пула файлов владеют несколькими мини-дисками, обычно включая CMS A-диск (адрес виртуального устройства 191, содержащий файлы конфигурации пула файлов), управляющий диск, диск журнала и любое количество дисков данных, которые фактически хранят пользовательские файлы.

Если учетная запись пользователя настроена только на использование SFS (и не владеет ни одним мини-диском), то диск A пользователя FILEPOOL:USERID.и все последующие каталоги, которые создает пользователь, будут находиться FILEPOOL:USERID.DIR1.DIR2.DIR3там, где эквивалентный путь к файлу UNIX — /dir1/dir2/dir3. Каталоги SFS могут иметь гораздо более детальный контроль доступа по сравнению с мини-дисками (которые, как упоминалось выше, часто могут иметь только пароль на чтение, пароль на запись и пароль на множественную запись). Каталоги SFS также решают проблемы, которые могут возникнуть, когда два пользователя одновременно записывают данные на один и тот же мини-диск CMS, что может привести к повреждению диска (поскольку виртуальная машина CMS, выполняющая запись, может не знать, что другой экземпляр CMS также записывает данные на мини-диск).

Машины сервера пула файлов также обслуживают тесно связанную файловую систему: Byte File System. BFS используется для хранения файлов в файловой системе в стиле UNIX. Ее основное применение — среда VM OpenExtensions POSIX для CMS. Сами виртуальные машины пользователей CMS взаимодействуют с виртуальными машинами сервера SFS через механизм IUCV. [19]

История

OS/VS1, начинающаяся с VM/370
Использование DASD Dump/Restore (DDR) для резервного копирования системы VM/370

Ранняя история VM описана в статьях CP/CMS и History of CP/CMS . VM/370 является повторной реализацией CP/CMS и была выпущена в 1972 году как часть анонса IBM System/370 Advanced Function (который добавил виртуальную память и операционные системы к серии System/370 ). Ранние выпуски VM до VM/370 Release 6 продолжались в открытом исходном коде до 1981 года и сегодня считаются находящимися в общественном достоянии . Эта политика закончилась в 1977 году с платными обновлениями VM/SE и VM/BSE и в 1980 году с VM/System Product (VM/SP). Тем не менее, IBM продолжала предоставлять обновления в исходном виде для существующего кода в течение многих лет, хотя обновления для всех, кроме бесплатной базы, требовали лицензии. Как и в случае с CP-67, привилегированные инструкции в виртуальной машине вызывают прерывание программы, и CP имитировала поведение привилегированной инструкции. VM оставалась важной платформой в IBM, используемой для разработки операционных систем и использования в режиме разделения времени; но для клиентов она оставалась «другой операционной системой» IBM. Семейства ОС и DOS оставались стратегическими продуктами IBM, и клиентов не поощряли использовать VM. Те, кто это делал, сформировали тесные рабочие отношения, продолжая модель поддержки сообщества ранних пользователей CP/CMS. Тем временем система боролась с политическими распрями внутри IBM по поводу того, какие ресурсы должны быть доступны проекту по сравнению с другими усилиями IBM. Основная проблема с системой была замечена на уровне полевых продаж IBM: VM/CMS явно сокращала количество оборудования, необходимого для поддержки заданного числа пользователей в режиме разделения времени. IBM, в конце концов, занималась продажей компьютерных систем.

Мелинда Вариан приводит следующую захватывающую цитату, иллюстрирующую неожиданный успех VM: [20]

Маркетинговые прогнозы для VM/370 предсказывали, что не более одного 168 когда-либо будет работать под управлением VM в течение всего срока службы продукта. Фактически, первые 168, поставленные заказчику, работали только под управлением CP и CMS. Десять лет спустя десять процентов крупных процессоров, поставляемых из Покипси, будут предназначены для работы под управлением VM, как и весьма значительная часть машин среднего класса, которые будут построены в Эндикотте. Не прошло и пятнадцати лет, как лицензий VM будет больше, чем лицензий MVS.

Версия PC DOS , которая запускает CMS на XT/370 (и позже на AT/370), называется VM/PC. VM/PC 1.1 была основана на VM/SP release 3. Когда IBM представила процессорные карты P/370 и P/390, ПК теперь мог запускать полноценные системы VM, включая VM/370, VM/SP, VM/XA и VM/ESA (эти карты были полностью совместимы с мэйнфреймами S/370 и S/390 и могли запускать любую операционную систему S/370 из 31-битной эпохи, например, MVS/ESA, VSE/ESA).

В дополнение к базовым выпускам VM/SP, IBM также представила VM/SP HPO (High Performance Option). Это дополнение (устанавливаемое поверх базового выпуска VM/SP) улучшило несколько ключевых системных возможностей, включая возможность использования более 16 МБ памяти (ОЗУ) на поддерживаемых моделях (например, IBM 4381). С установленным VM/SP HPO новый предел составлял 64 МБ; однако один пользователь (или виртуальная машина) не мог использовать более 16 МБ. Функции файловой системы спула также были улучшены, что позволило создать 9900 файлов спула для одного пользователя, а не 9900 для всей системы. Архитектура файловой системы спула также была улучшена, каждый файл спула теперь имел уникальный идентификатор пользователя, связанный с ним, а блоки управления файлами чтения теперь хранились в виртуальном хранилище. Систему также можно было настроить на запрет доступа определенных пользователей к векторному объекту (с помощью записей в каталоге пользователя). [6]

Выпуски VM, начиная с VM/SP Release 1, поддерживали многопроцессорные системы. Версии System/370 VM (такие как VM/SP и VM/SP HPO) поддерживали максимум два процессора, при этом система работала в режиме UP (однопроцессорный), MP (многопроцессорный) или AP (присоединенный процессор). [21] Режим AP аналогичен режиму MP, за исключением того, что второй процессор не имеет возможности ввода-вывода. Выпуски System/370-XA VM (такие как VM/XA) поддерживали больше. Выпуски System/390 (такие как VM/ESA) почти полностью сняли ограничение, и некоторые современные системы z/VM могут иметь до 80 процессоров. [22] Лимит на VM для определенных процессоров составляет 64.

Когда IBM представила System/370 Extended Architecture на 3081 , клиенты столкнулись с необходимостью запускать производственную систему MVS/370 во время тестирования MVS/XA на той же машине. Решением IBM стало VM/XA Migration Aid, которое использовало новую инструкцию Start Interpretive Execution (SIE) для запуска виртуальной машины. SIE автоматически обрабатывал некоторые привилегированные инструкции и возвращался к CP в случаях, когда он не мог обработать. Processor Resource/System Manager (PR/SM) более позднего 3090 также использовал SIE. Было несколько продуктов VM/XA, прежде чем он был в конечном итоге вытеснен VM/ESA и z/VM.

В дополнение к сетям RSCS IBM также предоставила пользователям сети VTAM . ACF/VTAM для VM был полностью совместим с ACF/VTAM на MVS и VSE. [23] Как и RSCS, VTAM на VM работал под управлением специализированной операционной системы GCS. Однако VM также поддерживала сети TCP/IP. В конце 1980-х годов IBM выпустила стек TCP/IP для VM/SP и VM/XA. [24] Стек поддерживал сети IPv4 и различные системы сетевых интерфейсов (такие как межсетевые соединения каналов между мэйнфреймами или специализированный IBM RT PC, который ретранслировал трафик в сеть Token Ring или Ethernet ). Стек обеспечивал поддержку соединений Telnet либо с простых эмуляторов терминалов линейного режима, либо с эмуляторов, совместимых с VT100, либо с надлежащих эмуляторов терминалов IBM 3270. Стек также предоставлял FTP-сервер. IBM также выпустила дополнительный сервер NFS для VM; ранние версии были довольно примитивными, но современные версии намного более продвинуты. [25]

Также существовал четвертый вариант сети, известный как VM/Pass-Through Facility (или более часто называемый PVM). PVM, как и VTAM, позволял подключаться к удаленным системам VM/CMS, а также к другим системам IBM. [26] Если два узла VM/CMS были связаны между собой каналом-каналом или бисинхронным каналом (возможно, с использованием модема коммутируемой линии или выделенной линии), пользователь мог удаленно подключиться к любой из систем, введя «DIAL PVM» на экране входа в VM, а затем введя имя системного узла (или выбрав его из списка доступных узлов). В качестве альтернативы пользователь, работающий с CMS, мог использовать программу PASSTHRU, которая была установлена ​​вместе с PVM, что позволяло быстро получать доступ к удаленным системам без необходимости выхода из сеанса пользователя. PVM также поддерживал доступ к не-VM системам, используя технику эмуляции 3x74. Более поздние выпуски PVM также включали компонент, который мог принимать соединения из сети SNA .

VM также была краеугольным камнем операционной системы BITNET , поскольку система RSCS, доступная для VM, обеспечивала простую сеть, которую было легко реализовать и которая была достаточно надежной. Сайты VM были связаны между собой посредством RSCS VM на каждой системе VM, взаимодействующей друг с другом, и пользователи могли отправлять и получать сообщения, файлы и пакетные задания через RSCS. Команда "NOTE" использовала XEDIT для отображения диалогового окна для создания электронного письма, из которого пользователь мог его отправить. Если пользователь указывал адрес в виде user at node, файл электронного письма доставлялся в RSCS, который затем доставлял его целевому пользователю в целевой системе. Если на сайте установлен TCP/IP, RSCS мог работать с машиной службы SMTP для доставки заметок (электронных писем) удаленным системам, а также для их получения. Если пользователь указывал user at some.host.name, программа NOTE доставляла электронное письмо на машину службы SMTP, которая затем направляла его на целевой сайт в Интернете.

Роль VM изменилась в IBM, когда эволюция оборудования привела к значительным изменениям в архитектуре процессора. Обратная совместимость осталась краеугольным камнем семейства мэйнфреймов IBM , которое по-прежнему использует базовый набор инструкций, представленный в оригинальной System/360 ; но потребность в эффективном использовании 64-битной zSeries сделала подход VM гораздо более привлекательным. VM также использовалась в центрах обработки данных, переходящих с DOS/VSE на MVS, и полезна при работе мэйнфреймов AIX и Linux , платформ, которые должны были стать все более важными. Текущая платформа z/VM наконец-то получила признание в IBM, которое пользователи VM давно считали заслуженным. Некоторые сайты z/VM одновременно запускают тысячи пользователей виртуальных машин на одной системе. z/VM была впервые выпущена в октябре 2000 года [27] и продолжает активно использоваться и развиваться.

IBM и третьи стороны предложили множество приложений и инструментов, работающих под управлением VM. Примерами являются RAMIS , FOCUS , SPSS , NOMAD , DB2 , REXX , RACF и OfficeVision . Текущие предложения VM охватывают весь спектр приложений для мэйнфреймов, включая HTTP- серверы, менеджеры баз данных, инструменты анализа, инженерные пакеты и финансовые системы.

Команды CP

Начиная с версии 6, программа управления VM/370 имеет ряд команд для обычных пользователей, связанных с определением и управлением виртуальной машиной пользователя. Части команды в нижнем регистре необязательны [28]

КомандаОписание
#КППозволяет пользователю выдавать команду CP из командной среды или любой другой виртуальной машины после нажатия клавиши break (по умолчанию PA1)
ADSTOPУстанавливает адрес остановки для остановки виртуальной машины на определенной инструкции
ВНИМАНИЕВызывает прерывание внимания , позволяя CP взять под контроль командную среду.
НачинатьПродолжить или возобновить выполнение виртуальной машины пользователя, опционально по указанному адресу
ИзменятьИзменить атрибуты файла или файлов спула. Например, можно изменить класс вывода или имя файла, или задать атрибуты, специфичные для принтера
ЗакрыватьЗакрывает открытый файл принтера, перфоратора, считывателя или консоли и передает его в систему спулинга.
ПАРАПодключить виртуальный адаптер канал-канал (CTCA) к другому. Также используется для подключения симулированных карт QDIO Ethernet к виртуальному коммутатору.
КПВыполнение команды CP в среде CMS
ОпределятьИзменить текущую конфигурацию виртуальной машины. Добавить виртуальные устройства или изменить доступный размер хранилища
ОТСОЕДИНИТЬУдалить виртуальное устройство или канал из текущей конфигурации
НАБОРПодключите свой терминал на экране входа в систему к имитируемым терминалам 3270 или пишущей машинки виртуальной машины с множественным доступом, находящейся в системе.
DISConnОтключите терминал, разрешив виртуальной машине продолжить работу.
ОтображатьОтображение хранилища виртуальной машины или (виртуальных) аппаратных регистров
СВАЛКАРаспечатать дамп снимка текущей виртуальной машины на виртуальном буферном принтере
ЭХОНастройте виртуальную машину на отображение введенных строк
ВнешнийВызвать внешнее прерывание виртуальной машины
УказыватьОтображение текущей загрузки системы или использования ресурсов
ИплIPL (загрузка) операционной системы на вашей виртуальной машине
СВЯЗЬПодключите устройство из другой виртуальной машины, если определение этой машины допускает общий доступ
LOADVFCBУкажите буфер управления формами (FCB) для виртуального принтера
ВЫХОД
LOGout
Завершить выполнение текущей виртуальной машины и отключиться от системы.
Войти
Войти
Войти в систему
Сообщение
MSG
Отправьте однострочное сообщение оператору системы или другому пользователю
НЕГотовПривести к тому, что виртуальное устройство отображается как неготовое
ЗаказИзменить порядок закрытых файлов спула по идентификатору или классу
УдалятьУдалить закрытые файлы спула для устройства по классу, идентификатору m или ВСЕ
ЗапросОтображение информации о состоянии вашей виртуальной машины, или сообщения дня, или количества или имен вошедших в систему пользователей.
ГОТОВЫЙВызвать прерывание завершения работы устройства
ЗапросВызвать прерывание на вашей виртуальной консоли
ПЕРЕЗАГРУЗИТЬОчистить все ожидающие прерывания для устройства
REWindПеремотка реального (не виртуального) магнитного ленточного устройства
НАБОРУстановите различные атрибуты для вашей виртуальной машины, включая клавиши обмена сообщениями или терминала.
СпатьПереведите виртуальную машину в состояние покоя на неопределенный или определенный период времени.
СМСгОтправить однострочное специальное сообщение на другую виртуальную машину (обычно используется для управления работой виртуальной машины; часто используется с RSCS)
ШпуляЗадайте параметры для виртуального устройства в очереди (принтера, считывателя или перфоратора)
МагазинИзменить содержимое регистров или хранилища вашей виртуальной машины
СистемаСбросьте или перезапустите виртуальную машину или очистите хранилище.
ЯрлыкУстановите тег, связанный с буферизованным устройством или файлом. Тег обычно используется подсистемой удаленной буферизации связи (RSCS) виртуальной машины для идентификации места назначения файла
ТерминалУстановите характеристики вашего терминала
СледЗапустить или остановить отслеживание определенных действий виртуальной машины
ПередачаПередача файла спулинга другому пользователю или от другого пользователя
ВМДУМПСоздайте дамп вашей виртуальной машины в формате, читаемом программным продуктом Интерактивной системы управления проблемами (IPCS).

Расширения OpenEdition

Начиная с VM/ESA Version 2, IBM представила платную дополнительную функцию OpenEdition для VM/ESA Shell and Utilities Feature , [29] которая обеспечивает совместимость с POSIX для CMS. Выдающейся функцией была оболочка UNIX для CMS. Компилятор C для этой среды UNIX предоставляется либо C/370, либо C для VM/ESA. Ни файловая система CMS, ни стандартная VM Shared File System не поддерживают файлы и пути в стиле UNIX; вместо этого используется Byte File System. После создания экстента BFS в файловом пуле SFS пользователь может смонтировать его с помощью OPENVM MOUNT /../VMBFS:fileservername:filepoolname /path/to/mount/point. Пользователь также должен смонтировать корневую файловую систему, что делается с помощью OPENVM MOUNT /../VMBFS:VMSYS:ROOT/ /, затем можно запустить оболочку с помощью OPENVM SHELL. В отличие от обычной SFS, доступ к файловым системам BFS контролируется разрешениями POSIX (с помощью chmod и chown ).

Начиная с z/VM Version 3, IBM интегрировала OpenEdition в z/VM [30] и переименовала его в OpenExtensions. OpenEdition и OpenExtensions обеспечивают соответствие POSIX.2 для CMS. [31] Программы, скомпилированные для запуска в оболочке OpenExtensions, хранятся в том же формате, что и стандартные исполняемые модули CMS. Визуальные редакторы, такие как vi, недоступны, поскольку терминалы 3270 не поддерживают их. Пользователи могут использовать ed или XEDIT вместо vi.

Маркетинг

В начале 1980-х годов группа VM в SHARE (группа пользователей IBM) искала талисман или логотип для принятия сообществом. Это было отчасти ответом на то, что пользователи MVS IBM выбрали индейку в качестве талисмана (выбранную, согласно легенде, MVS Performance Group в первые дни MVS, когда ее производительность была больной темой). В 1983 году плюшевый мишка стал фактическим талисманом VM на SHARE 60, когда наклейки с плюшевым мишкой были прикреплены к бейджам «старичков-милых», чтобы пометить их для новичков как «дружелюбных, если к ним подойти». Медведи стали хитом и вскоре появились широко. [32] Медведями награждали членов «Ордена рыцарей VM», людей, которые внесли «полезный вклад» в сообщество. [33] [34]

Примечания

  1. ^ CMS может использовать DIAG для ввода-вывода в файловых системах CMS.

Смотрите также

Ссылки

  1. ^ Вариан, Мелинда (апрель 1991 г.). «VM AND THE VM COMMUNITY: Past, Present, and Future» (PDF) . стр. 55. Архивировано (PDF) из оригинала 23 августа 2022 г. Получено 9 июня 2022 г.
  2. Creasy, op. cit., стр. 483 — роль RSCS.
  3. ^ "Two versions of MUMPS out". Computerworld . Vol. XXI, no. 48. 30 ноября 1987 г. Архивировано из оригинала 6 марта 2023 г. Получено 9 июля 2022 г.
  4. ^ "Матрица миграции лицензированных продуктов для z/VM" (PDF) . IBM. 2 декабря 2009 г. Архивировано (PDF) из оригинала 10 августа 2022 г. . Получено 9 июля 2022 г. .
  5. ^ Эллиотт, Джим (17 августа 2004 г.). Эволюция мэйнфреймов и виртуальных машин IBM (PDF) . ПОДЕЛИТЬСЯ Август 2004 г. Linux для S/390 Linux для Big Iron . ПОДЕЛИТЬСЯ . Сеанс 9140. Архивировано (PDF) из оригинала 13 октября 2006 г. . Получено 21 октября 2007 г. .
  6. ^ ab Virtual Machine/System Product High Performance Option Release 5 Guide (PDF) . IBM . Июль 1987 г. SC23-0189-3. Архивировано (PDF) из оригинала 17 июня 2022 г. . Получено 19 августа 2021 г. .
  7. ^ ОБЪЯВЛЕНА ВЫСОКОПРОИЗВОДИТЕЛЬНАЯ ВАРИАНТНАЯ ВЕРСИЯ VM/SYSTEM PRODUCT. Announcement Letters. IBM . 21 октября 1981 г. ZP81-0805. Архивировано из оригинала 17 декабря 2021 г. Получено 17 декабря 2021 г.
  8. ^ ПОМОЩЬ В ПЕРЕХОДЕ НА ВИРТУАЛЬНУЮ МАШИНУ/РАСШИРЕННУЮ АРХИТЕКТУРУ. Письма-объявления. IBM . 21 октября 1981 г. ZP81-0811. Архивировано из оригинала 17 декабря 2021 г. Получено 17 декабря 2021 г.
  9. ^ СИСТЕМЫ ВИРТУАЛЬНОЙ МАШИНЫ/РАСШИРЕННОЙ АРХИТЕКТУРЫ (VM/XA) FACILITY. Письма-объявления. IBM. 12 февраля 1985 г. 285-044. Архивировано из оригинала 17 декабря 2021 г. Получено 17 декабря 2021 г.
  10. ^ VIRTUAL MACHINE/EXTENDED ARCHITECTURE SYSTEM PRODUCT (VM/XA SP) RELEASE 1. Announcement Letters. IBM. 11 июня 1987 г. 287-239. Архивировано из оригинала 17 декабря 2021 г. Получено 17 декабря 2021 г.
  11. ^ АРХИТЕКТУРА ВИРТУАЛЬНЫХ МАШИН/КОРПОРАТИВНЫХ СИСТЕМ ВЕРСИЯ 1 ВЫПУСК 1.0 И ВЕРСИЯ 1 ВЫПУСК 1.1. Анонсирующие письма. IBM. 5 сентября 1990 г. 290-499. Архивировано из оригинала 17 декабря 2021 г. Получено 17 декабря 2021 г.
  12. ^ z/VM V3R1 Enabled for 64-bit Architecture. Announcement Letters. IBM. 3 октября 2000 г. 200-358. Архивировано из оригинала 17 декабря 2021 г. Получено 17 декабря 2021 г.
  13. ^ Гэри Р. Оллред (май 1971 г.). Интегрированная эмуляция System/370 под ОС и DOS (PDF) . Весенняя совместная компьютерная конференция 1971 г. Том 38. AFIPS Press. стр. 164. doi :10.1109/AFIPS.1971.58. Архивировано (PDF) из оригинала 25 июля 2018 г. . Получено 12 июня 2022 г. . Концепция гипервизора была относительно простой. Она состояла из дополнения к программе эмулятора и аппаратной модификации на модели 65 с функцией совместимости. Аппаратная модификация разделила модель 65 на разделы, каждый из которых адресулся от 0 до n. Программное дополнение, наложив системные слова состояния программы (PSW) на свои собственные, стало обработчиком прерываний для всей системы. После определения того, какой раздел инициировал событие, вызывающее прерывание, управление было передано соответствующим образом. Гипервизору требовались выделенные устройства ввода-вывода для каждого раздела, и из-за этого конфигурации ввода-вывода обычно были довольно большими и, следовательно, не подходили для большинства случаев использования.
  14. ^ IBM System/370 Principles of Operation (PDF) . IBM . 1987. стр. 10-5. Архивировано (PDF) из оригинала 29 сентября 2019 г. . Получено 17 августа 2019 г. .
  15. ^ ab "DIAGNOSE Instruction in a Virtual Machine" (PDF) . IBM Virtual Machine Facility/370: System Programmer's Guide (PDF) (Восьмое изд.). IBM. Март 1979 г. GC20-1807-7. Архивировано (PDF) из оригинала 2 апреля 2020 г. . Получено 17 августа 2019 г. .
  16. ^ "Глава 1. Инструкция DIAGNOSE в виртуальной машине" (PDF) . z/VM Version 7 Release 2 CP Programming Services (PDF) . IBM. 12 августа 2020 г. стр. 3. SC24-6272-04. Архивировано (PDF) из оригинала 30 апреля 2021 г. . Получено 9 мая 2021 г. . В реальном процессоре инструкция DIAGNOSE выполняет зависящие от процессора диагностические функции. В виртуальной машине вы используете интерфейс DIAGNOSE, чтобы запросить, чтобы CP выполнил службы для вашей виртуальной машины. Когда ваша виртуальная машина пытается выполнить инструкцию DIAGNOSE, управление возвращается CP. CP использует информацию, предоставленную в кодовой части инструкции, чтобы определить, какую службу он должен выполнить. После предоставления этой службы управление возвращается виртуальной машине.
  17. ^ Руководство пользователя продукта виртуальной машины/системы CMS, выпуск 6 (PDF) . IBM . Июль 1988 г. Глава 4 (Использование общей файловой системы). SC19-6210-05. Архивировано (PDF) из оригинала 17 июня 2022 г. Получено 19 августа 2021 г.
  18. ^ "File Pool Server Machines" (PDF) . Планирование, администрирование и эксплуатация пула файлов CMS (PDF) . z/VM 7.2. IBM . 12 ноября 2021 г. стр.  18–23 . SC24-6261-02. Архивировано (PDF) из оригинала 6 октября 2022 г. . Получено 10 июня 2022 г. .
  19. ^ "IUCV Overview". www.ibm.com . Архивировано из оригинала 31 июля 2022 г. . Получено 31 июля 2022 г. .
  20. ^ Varian, op. cit., стр. 30 – масштаб использования VM; лицензий VM больше, чем лицензий MVS
  21. ^ Virtual Machine/System Product Installation Guide Release 5 (PDF) . IBM . Декабрь 1986 г. SC24-5237-3. Архивировано (PDF) из оригинала 17 июня 2022 г. . Получено 19 августа 2021 г. .
  22. ^ "Vm66265: Z/Vm Support for 80 Logical Processors". IBM . 27 августа 2020 г. Архивировано из оригинала 19 августа 2021 г. Получено 19 августа 2021 г.
  23. ^ VTAM Reference Summary Version 3 Release 3 для MVS, VM и VSE/ESA (PDF) . IBM . Сентябрь 1990 г. LY43--0047-1. Архивировано (PDF) из оригинала 19 августа 2021 г. . Получено 19 августа 2021 г. .
  24. ^ IBM 9370 LAN Volume 2 - IEE 802.3 Support (PDF) . IBM . Апрель 1988. GG24-3227-0. Архивировано (PDF) из оригинала 19 августа 2021 г. . Получено 19 августа 2021 г. .
  25. ^ "VM TCP/IP NFS Server Support". IBM . 29 мая 2001 г. Архивировано из оригинала 26 апреля 2021 г. Получено 19 августа 2021 г.
  26. ^ VM/Pass-Through Facility Administration and Operation Version 2 (PDF) . IBM . Июнь 1993 г. SC24-5557-01. Архивировано из оригинала (PDF) 19 августа 2021 г. . Получено 19 августа 2021 г. .
  27. ^ "IBM: About the z/VM Operating System". Технология виртуализации IBM z/VM . Vm.ibm.com. Архивировано из оригинала 3 июля 2015 г. Получено 2 июля 2015 г.
  28. ^ IBM Virtual Machine Facility/370: Справочник команд CP для обычных пользователей (PDF) . IBM . 1 августа 1979 г. Архивировано (PDF) из оригинала 2 апреля 2020 г. . Получено 15 августа 2019 г. .
  29. ^ "Доступность: VM/ESA Version 2 Release 1.0 с OpenEdition для VM/ESA". Announcement Letters. IBM. 12 июня 1995 г. 295-240. Архивировано из оригинала 28 октября 2021 г. Получено 28 октября 2021 г.
  30. ^ "z/VM V3R1 Enabled for 64-bit Architecture". Announcement Letters. IBM . 3 октября 2000 г. 200-358. Архивировано из оригинала 17 декабря 2021 г. Получено 31 января 2022 г.
  31. ^ "IBM z/VM: OpenExtensions POSIX Conformance Document (GC24-6298-01)". www.ibm.com . 21 августа 2020 г. Архивировано из оригинала 28 февраля 2024 г. Получено 31 июля 2022 г.
  32. ^ "Галерея веб-GIF-файлов VM". Сайт IBM z/VM . Архивировано из оригинала 18 октября 2006 г.
  33. Вариан, op. cit., стр. 2 – история плюшевого мишки
  34. ^ "Объясните "официальный VM teddy"". Г-н Алан Дж. Флавелл . Alanflavell.org.uk. Архивировано из оригинала 4 марта 2016 г. Получено 2 июля 2015 г.

Дальнейшее чтение

Первичные источники CP/CMS
  • RJ Creasy, «Происхождение системы разделения времени VM/370», IBM Journal of Research & Development , том 25, № 5 (сентябрь 1981 г.), стр. 483–490, PDF
    — взгляд на историю CP/CMS и VM от руководителя проекта CP-40 , а также автора CTSS
  • EW Pugh, LR Johnson и John H. Palmer, IBM 360 и ранние 370 системы, MIT Press, Cambridge MA и London, ISBN 0-262-16123-0 — обширное (819  стр. ) рассмотрение предложений IBM в этот период; ограниченное освещение CP/CMS в такой окончательной работе говорит само за себя 
  • Мелинда Вариан, VM и сообщество VM, прошлое, настоящее и будущее , SHARE 89, сессии 9059–61, 1997;
    ― выдающийся источник по истории CP/CMS и VM
  • Bitsavers, Индекс /pdf/ibm/360/cp67
Дополнительные источники CP/CMS
  • RJ Adair, RU Bayles, LW Comeau и RJ Creasy, A Virtual Machine System for the 360/40, IBM Corporation, Cambridge Scientific Center Report No. 320-2007 (май 1966 г.)
    — основополагающая статья, описывающая реализацию концепции виртуальной машины, с описаниями настраиваемой CSC S/360-40 и конструкции CP-40.
  • International Business Machines Corporation, CP-67/CMS , Программа 360D-05.2.005, IBM Program Information Department (июнь 1969 г.)
    ― Справочное руководство IBM
  • RA Meyer и LH Seawright, «Система разделения времени виртуальной машины», IBM Systems Journal, т. 9, № 3, стр. 199–218 (сентябрь 1970 г.)
    ― описывает систему CP-67/CMS, описывая ее особенности и приложения.
  • RP Parmelee, TI Peterson, CC Tillman и DJ Hatfield, «Концепции виртуального хранения и виртуальных машин», IBM Systems Journal, том 11, № 2 (июнь 1972 г.)
Фоновые источники CP/CMS
  • FJ Corbató и др., Совместимая система разделения времени, Руководство программиста, MIT Press, 1963
  • FJ Corbató, M. Merwin-Daggett и RC Daley, "Экспериментальная система разделения времени", Proc. Весенняя совместная компьютерная конференция (AFIPS) 21, стр. 335–44 (1962) — описание CTSS
  • FJ Corbató и VA Vyssotsky, «Введение и обзор системы MULTICS», Труды Осенней объединенной компьютерной конференции (AFIPS) 27, стр. 185–96 (1965)
  • PJ Denning, «Виртуальная память», Computing Surveys , том 2, стр. 153–89 (1970)
  • Дж. Б. Деннис, «Сегментация и проектирование многопрограммных компьютерных систем», JACM, том 12, стр. 589–602 (1965)
    ― требования к виртуальной памяти для проекта MAC, предназначенного для GE 645
  • CAR Hoare и RH Perrott, редакторы, Operating Systems Techniques , Academic Press, Inc., Нью-Йорк (1972)
  • T. Kilburn, DBG Edwards, MJ Lanigan и FH Sumner, «Одноуровневая система хранения», IRE Trans. Electron. Computers EC-11, стр. 223–35 (1962)
    ― Manchester/Ferranti Atlas
  • RA Nelson, «Устройства отображения и система обработки данных M44», Исследовательский отчет RC 1303 , Исследовательский центр IBM Thomas J. Watson (1964)
    ― о IBM M44/44X
  • RP Parmelee, TI Peterson, CC Tillman и DJ Hatfield, «Концепции виртуального хранения и виртуальных машин», IBM Systems Journal , том 11, стр. 99–130 (1972)
Дополнительные онлайн-ресурсы CP/CMS
  • febcm.club.fr — Хронология информационных технологий, 1964–74
  • www.multicians.org — Краткое эссе Тома Ван Флека «IBM 360/67 и CP/CMS»
  • www.cap-lore.com — Краткая история виртуальных машин IBM Нормана Харди
  • www.cap-lore.com — Краткое описание «Blaauw Box» Нормана Харди
  • Боб Дюшарм, «Справочник по операционным системам», часть 5: VM/CMS : довольно подробное руководство пользователя по VM/CMS
  • EC Hendricks и TC Hartmann, «Эволюция подсистемы виртуальной машины», IBM Systems Journal , том 18, стр. 111–142 (1979): проектирование и реализация RSCS
  • Корпорация IBM, IBM Virtual Machine Facility/370 Введение , GC20-1800, (1972): оригинальное руководство
  • Издание IBM Redbooks – учебник z/VM
  • IBM: портал z/VM
  • IBM: руководства z/VM
  • Документация VM/PC на bitsavers
→  вывод      >>  сильное влияние      >  некоторое влияние/преимущество
 КТСС 
> IBM M44/44X
>> CP-40/CMSCP[-67]/CMS VM/370 → Версии VM/SE → Версии VM/SP → Версии VM/XA → VM/ESAz/VM
Вице-президент/CSS
> ТСС/360
> TSO для MVT → для OS/VS2 → для MVS → ... → для z/OS
>> MULTICS и большинство других платформ с разделением времени

Retrieved from "https://en.wikipedia.org/w/index.php?title=VM_(operating_system)&oldid=1250560204"