Опубликован: 13.04.2006 | Уровень: специалист | Доступ: платный | ВУЗ: Московский государственный университет путей сообщения
Лекция 9:

Операционные системы z/VM и Linux

< Лекция 8 || Лекция 9: 1234 || Лекция 10 >
Ключевые слова: операционная система, IBM, virtual machine, виртуальная машина, процессорное время, память, монитор, ESA, гетерогенность, intranet, TCP/IP, SNA, Java, Ethernet, FDDI, FTP, VLAN, NFS, smtp, token, UDP, Windows, SNMP, netview, POSIX, интерфейс, shell, сеть данных, мэйнфрейм, надежность, производительность, storage management, резервное копирование, архивирование, OS/2, консолидация, enterprise, server, увеличение производительности, механизмы, управляющие программы, hypervisor, CMS, основная память, виртуальная память, страничная организация, spool, simulate, идентификатор пользователя, logon, conversation, monitoring system, операционная среда, IPL, прикладное программирование, DASD, BFS, batch, совместный доступ к файлу, pooling, HFS+, перемещение файлов, virtual channel, CTC, guest, серверная ОС, licensing, common criteria, IEC, программное обеспечение промежуточного слоя, DB2, MQSeries, application server, Java Virtual Machine, сетевой сервис, зависимость компонент, middleware, facility, native, физическая память, системная консоль, rlogin, удаленное администрирование, перезагрузка системы, NFS-сервер, Виртуализация, электронный бизнес, сервер, SUN, дублирование данных, виртуальный сервер, затраты, Line, разделы, вычислительная сеть, LAN, реконфигурация, интеграция

Назначение и возможности z/VM

Операционная система z/VM представляет второе направление операционных систем IBM, ориентированных на платформу zSeries. z/VM построена на основе концепции " виртуальных машин " (Virtual Machine), которая означает, что в рамках одной системы может одновременно функционировать множество виртуальных машин, каждая из которых функционально эквивалентна реальной ЭВМ. Каждая виртуальная машина использует свою часть ресурсов системы (процессорное время, оперативную память, периферийные устройства).

Таким образом, z/VM, разделяя ресурсы ЭВМ между множеством виртуальных машин, предоставляет возможность параллельной работы на одном сервере как отдельных пользователей и системно-независимых приложений, так и различных операционных систем, включая диалоговый монитор z/VM, а также OS/390, z/OS, Linux и др. Операционные системы, запускаемые в рамках виртуальной машины z/VM, называют гостевыми. Гостевые операционные системы конфигурируются как независимые системы для поддержки своего круга пользователей и решения определенного набора задач. z/VM поддерживает в качестве гостевых операционные системы, предназначенные для z/Architecture и архитектуры ESA/390.

Возможности виртуальных машин z/VM позволяют использовать их для решения широкого круга практических задач, среди которых необходимо выделить следующие:

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

z/VM может служить основой для создания и развертывания гетерогенных корпоративных систем масштаба предприятия благодаря поддержке целого ряда промышленных стандартов, протоколов и интерфейсов. В частности, z/VM располагает современными средствами поддержки сетевых вычислений (Internet/intranet) на основе TCP/IP, SNA, Java и многочисленных сетевых протоколов, таких как Ethernet, FDDI, FTP, VLAN, NFS, SMTP, Token Ring, UDP, X.25, X-Windows, SNMP, NetView. z/VM поддерживает стандарты открытых систем POSIX и XPG, предоставляя интерфейс системных вызовов для UNIX-приложений и пользовательскую среду shell в рамках сервиса разработки приложений OpenExtensions. Это позволяет как выполнять готовые POSIX-совместимые приложения, так и разрабатывать новые.

Одна из важных областей применения z/VM - использование в качестве серверной платформы для поддержки клиентов локальных вычислительных сетей. Данное решение предоставляет огромному числу пользователей все преимущества мэйнфрейма, включая высокую надежность и производительность, большие объемы внешней памяти, быстрые коммуникации. В частности, поддерживаемый z/VM клиент-серверный продукт Tivoli Storage Manager for VM обеспечивает резервное копирование, архивирование и восстановление файлов рабочих станций, работающих под управлением MS Windows, Linux, Apple Macintosh и OS/2. Значительное внимание IBM уделяет архитектурным решениям, основанным на консолидации Linux-серверов под управлением z/VM.

Предшественницей z/VM была операционная система VM/ESA, ориентированная на 32-разрядную платформу S/390. В VM/ESA были реализованы основные технологические принципы и решения, положенные в основу z/VM. Первая версия z/VM V3R1, представленная в 2000 году, как и последующие выпуски, обеспечивают полную поддержку как существующих серверов zSeries, так и серверов S/390 (Parallel Enterprise Server G5/G6, Multiprise 3000). При установке z/VM на серверы zSeries появляется возможность в качестве гостевых систем использовать 64-разрядные OS/390 V2R10, z/OS и Linux для zSeries, а также операционные системы ESA/390, в том числе OS/390, VSE/ESA, TPF и Linux для S/390. z/VM снимает ограничение на объем основной памяти 2 GB, что открывает новые возможности в отношении увеличения производительности при обслуживании большего числа пользователей и гостевых систем.

Архитектура и основные компоненты z/VM

Операционная система z/VM построена в соответствии с концепцией интеграции компонентов и включает базовые и опциональные элементы. Базовые элементы служат для поддержки наиболее важных функций и сервисов системы и всегда включаются в установочный пакет z/VM. Опциональные элементы обеспечивают поддержку дополнительных функций операционной системы и могут заказываться по отдельности по желанию пользователя. Полный перечень элементов z/VM представлен в приложении 7. В данной главе будут рассмотрены наиболее важные базовые компоненты z/VM, такие как управляющая программа CP и диалоговый монитор CMS, и показаны основные механизмы ее функционирования.

Управляющая программа z/VM

Управляющая программа CP (Control Program) z/VM выполняет функции менеджера виртуальных машин, включая создание программных образов виртуальных машин для каждого пользователя, распределение ресурсов физической ЭВМ между виртуальными машинами, а также организацию взаимодействия между приложениями, выполняющимися на разных виртуальных машинах. По этой причине управляющую программу CP иногда называют гипервизором (hypervisor).

Виртуальные машины, создаваемые управляющей программой CP, различаются по режиму работы [ 5.33 ] . Для работы на серверах zSeries обычно выбирают режим ESA (или эквивалентный XA). В этом случае, если управляющая программа сконфигурирована для работы в 32-разрядном режиме, виртуальная машина будет соответствовать архитектуре ESA/390. Для 64-разрядной инсталляции CP данный режим позволяет выполнять как 32-разрядные, так и 64-разрядные приложения, используя все возможности z/Architecture. Режим XC основан на так называемой ESA/XC архитектуре, обеспечивающей разделяемый доступ виртуальных машин к пространствам данных z/VM.

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

Управление памятью в z/VM основано на концепции множественных виртуальных адресных пространств размером 2 GB для 32-разрядного режима и 16 ЕB для 64-разрядного. Управляющая программа CP всегда размещается в первой секции любого адресного пространства (рис. 5.66). По запросу пользователя CP создает виртуальную машину, выделяя ей новое адресное пространство, и загружает туда диалоговый монитор CMS или гостевую операционную систему. Диалоговый монитор является "штатной" операционной системой в составе z/VM, ориентированной на поддержку пользователя. После этого средствами CMS или операционных систем в адресные пространства может производиться загрузка собственных приложений.

Виртуальные адресные пространства z/VM

Рис. 5.66. Виртуальные адресные пространства z/VM

С точки зрения используемой конфигурации памяти различают три типа виртуальных машин:

  • V=R (Virtual=Real) машина получает в свое распоряжение фиксированный непрерывный участок основной памяти, начинающийся с нулевого адреса.
  • V=F (Virtual=Fixed) машина получает в свое распоряжение фиксированный непрерывный участок основной памяти, начинающийся с адреса, отличного от нулевого.
  • V=V (Virtual=Virtual) машина не может непосредственно использовать основную память.

Первые два типа относят к привилегированным типам виртуальных машин. На таких машинах управление выделенной основной памятью берет на себя гостевая ОС в соответствии с ее внутренними механизмами. В третьем случае виртуальной машине выделяется виртуальная память, управляемая CP. Она имеет страничную организацию и поддерживает стандартный механизм динамического преобразования адресов с возможностью межпространственной связи на основе регистров доступа.

Использование периферийных устройств виртуальной машиной производится одним из четырех способов. Способ закрепления (exclusive) означает выделение реального устройства в полное распоряжение виртуальной машины. Способ разделения (shared) допускает одновременное использование реального устройства несколькими виртуальными машинами. Способ накопления (spooled) основан на выделении реальному устройству области жесткого диска (спула), которая используется для накопления вводимой и выводимой информации. Обмен данными между спулом и реальным устройством контролируется управляющей программой. Способ симуляции (simulated) означает программное моделирование работы некоторых устройств, которые физически не используются в системе (например, сетевые устройства связи для взаимодействия виртуальных машин).

Для работы с управляющей программой CP пользователю предоставляется набор команд, с помощью которых производится создание и конфигурирование виртуальных машин, администрирование пользователей, управление устройствами, информирование о работе системы и т.д. Доступ к z/VM осуществляется через консоль, назначаемую терминальному устройству или эмулируемую на рабочей станции. Множество команд, доступных пользователю, и, следовательно, возможности управления зависят от установленного для данного пользователя класса (классов) привилегий. В z/VM установлено семь основных стандартных классов привилегий, обозначаемых латинскими буквами A-G, в соответствии с ролью пользователя в системе [ 5.31 ] :

  • A (системный оператор) - управление системой виртуальных машин и доступом пользователей к системе, настройка параметров производительности и сбор информации о системе;
  • B (системный оператор ресурсов) - управление всеми реальными устройствами z/VM;
  • C (системный программист) - настройка системных конфигурационных параметров;
  • D (оператор спула) - управление устройствами, использующими метод накопления, и настройка спула;
  • E (системный аналитик) - контроль и управление хранением системных данных;
  • F (инженер по сервисному обслуживанию) - получение и анализ данных о работе оборудования;
  • G (обычный пользователь) - управление работой отдельной виртуальной машины;

Кроме перечисленных, поддерживается класс команд Any, доступных любому пользователю, независимо от привилегий, а также существует возможность создавать пользовательские классы для собственных нужд.

Важнейшим элементом управляющей программы CP является создаваемый системным оператором справочник пользователей (user directory), содержащий описание всех виртуальных машин, которые могут быть запущены в системе. Каждый элемент справочника содержит перечень основных параметров виртуальной машины, включающий: идентификатор пользователя (logon ID) и пароль, класс привилегий, начальную конфигурацию используемых устройств, объем памяти, режим работы, параметры использования процессорного времени и некоторые другие. Обычно справочник пользователей создается на этапе инсталляции системы, но может быть изменен в процессе работы.

Запуск зарегистрированной в справочнике виртуальной машины производится по инициативе пользователя, когда он вводит команду LOGON. После завершения инициализации на основе указанных параметров пользователь получает возможность выполнять различные команды в соответствии с назначенным классом привилегий, в том числе запустить диалоговый монитор CMS или гостевую операционную систему.

< Лекция 8 || Лекция 9: 1234 || Лекция 10 >
Ярослав Матюхин
Ярослав Матюхин
Россия
Сергей Исаков
Сергей Исаков
Россия