Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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

Первой версией, выпущенной в 1972 году, была VM / 370 , или официально Virtual Machine Facility / 370 . Это была повторная реализация System / 370 более ранней операционной системы CP / CMS . Версии Milestone включали VM / SP . [1] Текущая версия z / VM до сих пор широко используется в качестве одного из основных решений для полной виртуализации на рынке мэйнфреймов. [ необходима цитата ]

CMS обычно в сочетании с ВМ во имя относится к системе разговорного Monitor, операционной системы однопользовательского , разработанной для обеспечения разговорного времени обмена под VM.

Обзор [ править ]

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

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

  • CMS (« Система диалогового монитора », переименованная из «Кембриджской системы мониторинга» CP / CMS ). Его официальное название - VM-CMS (сбивает с толку, поскольку виртуальную машину обычно называют VM / CMS ). Большинство виртуальных машин работают под управлением CMS - облегченной однопользовательской операционной системы. Его интерактивная среда сравнима с средой однопользовательского ПК, включая файловую систему, службы программирования, доступ к устройствам и обработку командной строки. (В то время как более ранняя версия CMS недоброжелательно описывалась как « CP / M на мэйнфрейме», сравнение - анахронизм; автор CP / M, Гэри Килдалл , был опытным пользователем CMS.)
  • Основная операционная система. Основные операционные системы IBM (например, семейства MVS или DOS / VSE ) можно загружать и запускать без изменений. Гипервизор виртуальных машин рассматривает гостевые операционные системы как прикладные программы с исключительными привилегиями - он не позволяет им использовать привилегированные инструкции (те, которые позволяют приложениям управлять всей системой или значительными ее частями), но имитирует привилегированные инструкции от их имени. Большинство операционных систем мэйнфреймов завершают работу обычного приложения, которое пытается узурпировать привилегии операционной системы.
  • Еще одна копия ВМ. Экземпляр ВМ «второго уровня» может быть полностью виртуализирован внутри виртуальной машины. Вот как выполняется разработка и тестирование виртуальной машины (виртуальная машина «второго уровня» потенциально может реализовать другую виртуализацию оборудования). Этот метод использовался для разработки программного обеспечения S / 370 до того, как стало доступно оборудование S / 370, и он продолжал играть роль в разработке нового оборудования в IBM. В литературе приводятся практические примеры пятиуровневой виртуализации (см. Стр. 28 ВМ и сообщества виртуальных машин ). Уровни виртуальных машин ниже верхнего также рассматриваются как приложения, но с исключительными привилегиями.
  • Копия версии AIX или Linux для мэйнфреймов . В среде мэйнфрейма эти операционные системы часто работают под управлением виртуальной машины и обрабатываются так же, как и другие гостевые операционные системы. (Они также могут работать как «родные» операционные системы на голом оборудовании.)
  • Специализированная подсистема виртуальных машин. В виртуальных машинах VM-CP работают несколько систем, не относящихся к CMS, которые предоставляют пользователям CMS такие услуги, как буферизация, межпроцессное взаимодействие и поддержка специализированных устройств. Они действуют «за кулисами», расширяя услуги, доступные для CMS, без добавления в программу управления VM-CP. Работая на отдельных виртуальных машинах, они получают такую ​​же защиту и защиту, как и другие пользователи виртуальных машин. Примеры включают:
    • RSCS («Remote Spooling and Communication Subsystem», также известный как VNET) - средства связи и передачи информации между виртуальными машинами [2]
    • RACF («Resource Access Control Facility») - система безопасности.
    • GCS («Система группового управления»), которая обеспечивает ограниченное моделирование MVS API.
    • Общая файловая система (SFS), которая организовывает общие файлы в дереве каталогов.

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

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

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

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

Диагностирует инструкция ( '83'x-нет мнемонические) является привилегированной инструкции , которые изначально предназначались IBM для выполнения „встроенных диагностических функций или других моделей в зависимости от функций.“ [4] В VM / 370 он был перепрофилирован для «связи между виртуальной машиной и CP». Инструкция содержит два четырехбитовых номера регистра, называемых Rx и Ry, которые могут «содержать адреса хранения операндов или коды возврата, передаваемые в интерфейс DIAGNOSE», и двухбайтовый код, который CP использует для определения того, какую функцию DIAGNOSE выполнять. " [5] Некоторые из доступных функций диагностики перечислены ниже.

История [ править ]

Ранняя история VM описана в статьях CP / CMS и History of CP / CMS . VM / 370 - это повторная реализация CP / CMS, которая была сделана доступной в 1972 году как часть объявления IBM «Расширенные функции System / 370» (которое добавило аппаратное обеспечение виртуальной памяти и операционные системы в серию 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, и заказчиков не поощряли запускать виртуальные машины. Те, кто это сделал, сформировали тесные рабочие отношения, продолжая модель поддержки сообщества первых пользователей CP / CMS. Тем временем система боролась с политической борьбой внутри IBM по поводу того, какие ресурсы должны быть доступны для проекта, по сравнению с другими усилиями IBM. Основная «проблема» с системой была замечена на уровне продаж IBM на местах: VM / CMS наглядно уменьшила количество оборудования, необходимого для поддержки определенного числа пользователей с разделением времени. В конце концов, IBM занималась продажей компьютерных систем.

Мелинда Вариан приводит эту увлекательную цитату, иллюстрирующую неожиданный успех VM:

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

Версия DOS для ПК, которая запускает CMS на XT / 370 (и позже на AT / 370), называется VM / PC. VM / PC 1.1 был основан на версии 3 VM / SP.

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

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

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

Команды CP [ править ]

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

Талисман ВМ [ править ]

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

См. Также [ править ]

  • Эволюция системы разделения времени

Ссылки [ править ]

  1. ^ Эллиотт, Джим (2004-08-17). «Эволюция мэйнфреймов и виртуальных машин IBM» (PDF) . Linux для S / 390 Linux для Big Iron . ПОДЕЛИТЬСЯ Сессия 9140 . Проверено 21 октября 2007 .
  2. ^ Кризи, оп. соч., стр. 483 - роль RSCS.
  3. ^ Гэри Р. Оллред (1971). Встроенная эмуляция System / 370 под ОС и DOS (PDF) . Весенняя совместная компьютерная конференция .
  4. ^ Корпорация IBM (1987). Принципы работы IBM System / 370 (PDF) . п. 10-5 . Проверено 17 августа 2019 года .
  5. ^ IBM Corporation (март 1979). IBM Virtual Machine Facility / 370: 'Руководство системного программиста (PDF) . С. 182–206 . 4 . Проверено 17 августа 2019 года .
  6. ^ Вариан, соч. соч., стр. 30 - степень использования ВМ; больше лицензий ВМ, чем лицензий MVS
  7. ^ «IBM: Об операционной системе z / VM» . Технология виртуализации IBM z / VM . Vm.ibm.com . Проверено 2 июля 2015 .
  8. ^ IBM Corporation (1 августа 1979). IBM Virtual Machine Facility / 370: Справочник команд CP для обычных пользователей (PDF) . Проверено 15 августа 2019 года .
  9. ^ "Галерея виртуальных веб-гифок" . Сайт IBM z / VM . Архивировано из оригинального 18 октября 2006 года.
  10. ^ Вариан, соч. соч., стр. 2 - история плюшевого мишки
  11. ^ "Объясните" официальный тедди ВМ " " . Г-н Алан Дж. Флавелл . Alanflavell.org.uk . Проверено 2 июля 2015 .

Внешние ссылки [ править ]

Источники ВМ [ править ]

  • Боб Дюшарм, Руководство по операционным системам, часть 5: VM / CMS
    - довольно подробное руководство пользователя по VM / CMS
  • EC Hendricks и TC Hartmann, "Evolution of a Virtual Machine Subsystem", IBM Systems Journal Vol. 18, стр. 111–142 (1979)
    - Разработка и реализация RSCS
  • IBM Corporation, IBM Virtual Machine Facility / 370 Introduction , GC20-1800, (1972)
    - исходное руководство

Основные источники CP / CMS [ править ]

  • Р. Дж. Кризи, « Происхождение системы разделения времени VM / 370 », IBM Journal of Research & Development , Vol. 25, No. 5 (сентябрь 1981), стр. 483–90, PDF
    - взгляд на историю CP / CMS и VM от руководителя проекта CP-40 , также автора CTSS
  • Э. У. Пью, Л. Р. Джонсон и Джон Х. Палмер, системы IBM 360 и более ранние 370, MIT Press, Кембридж, Массачусетс и Лондон, ISBN 0-262-16123-0 - подробное (819  стр. ) Описание предложений IBM за этот период; ограниченный охват CP / CMS в такой окончательной работе говорит 
  • Мелинда Вариан, VM и сообщество VM, прошлое, настоящее и будущее , SHARE 89 Sessions 9059–61, 1997;
    - отличный источник истории CP / CMS и VM

Дополнительные источники CP / CMS [ править ]

  • Р. Дж. Адэр, РУ Бейлс, Л. В. Комо и Р. Дж. Кризи, Система виртуальных машин для 360/40, Корпорация IBM, Отчет Кембриджского научного центра № 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
  • Р. А. Мейер и Л. Х. Сиврайт, "Система разделения времени виртуальной машины", IBM Systems Journal, Vol. 9, No. 3, pp. 199–218 (сентябрь 1970 г.)
    - описывает систему CP-67 / CMS с указанием функций и приложений.
  • Р. П. Пармели, Т. И. Петерсон, К. К. Тиллман и Д. Хэтфилд, «Виртуальное хранилище и концепции виртуальных машин», IBM Systems Journal, Vol. 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ó и В.А. Высоцкий, "Введение и обзор системы MULTICS", Proc. Fall Joint Computer Conference (AFIPS) 27, pp. 185–96 (1965).
  • PJ Denning, «Виртуальная память», Computing Surveys Vol. 2. С. 153–89 (1970).
  • Дж. Б. Деннис, "Сегментация и проектирование многопрограммных компьютерных систем", JACM Vol. 12, pp. 589–602 (1965)
    - требования к виртуальной памяти для Project MAC, предназначенного для GE 645
  • К.А. Хоар и Р. Х. Перротт, редакторы, « Методы операционных систем» , Academic Press, Inc., Нью-Йорк (1972)
  • Т. Килберн, DBG Edwards, MJ Lanigan и FH Sumner, «Одноуровневая система хранения», IRE Trans. Электрон. Компьютеры EC-11, стр. 223–35 (1962)
    - Manchester / Ferranti Atlas
  • Р.А. Нельсон, «Картографические устройства и система обработки данных M44», Отчет об исследовании RC 1303 , Исследовательский центр IBM Томаса Дж. Уотсона (1964 г.)
    - об IBM M44 / 44X
  • Р. П. Пармели, Т. И. Петерсон, К. К. Тиллман и Д. Хэтфилд, «Виртуальное хранилище и концепции виртуальных машин», IBM Systems Journal , Vol. 11. С. 99–130 (1972).

Дополнительные он-лайн ресурсы CP / CMS [ править ]

  • febcm.club.fr - Хронология информационных технологий , 1964–74
  • www.multICAL.org - короткое эссе Тома Ван Влека IBM 360/67 и CP / CMS
  • www.cap-lore.com - Краткая история виртуальных машин IBM от Нормана Харди
  • www.cap-lore.com - Краткое описание Нормана Харди «Коробки Блаау»

Другие ресурсы [ править ]

  • Публикация IBM Redbooks - учебник z / VM
  • IBM: портал z / VM
  • IBM: руководства по z / VM
  • Документация ВМ / ПК на битсейверах