Московский государственный университет путей сообщения
Опубликован: 11.04.2006 | Доступ: свободный | Студентов: 1311 / 300 | Оценка: 4.39 / 4.00 | Длительность: 17:21:00
ISBN: 978-5-9556-0036-1
Специальности: Разработчик аппаратуры
Лекция 2:

Архитектура zSeries

Регистрация программных событий (Program-Event Recording - PER)

Применяется для регистрации информации о программных событиях, которая может использоваться в процессах отладки программ. Выделяют следующие типы запоминаемых программных событий:

  • Выполнение команды перехода при успешных условиях перехода. При этом может быть добавлена опция попадания адреса перехода в заданную область памяти.
  • Выборка команд из определенной области памяти.
  • Изменения содержимого определенной области памяти. Дополнительная опция позволяет задать адресные пространства, в которых находится выделенная область.
  • Выполнение команды записи в реальное адресное пространство (STORE USING REAL ADDRESS).

Типы регистрируемых событий и область памяти для их записи указываются в управляющих регистрах CR9, 10, 11 (табл. 2.22). Опция учета адресных пространств, управляемая битом S, может быть задействована только при включенном механизме динамического преобразования адреса и при задании в коде управления адресным пространством ASCE значения бита S, разрешающего регистрацию программных событий записи в определенную область памяти этого пространства.

Таблица 2.22. Управление регистрацией PER-событий
CR9 EM B S
CR10 Начальный адрес области памяти PER
CR11 Конечный адрес области памяти PER

EM - четырехразрядная маска разрешения регистрации разных типов программных событий.

В - бит разрешения опции попадания адреса перехода в заданную область памяти.

S - бит разрешения опции задания адресных пространств, в которых находится выделенная область памяти с регистрацией записи.

Начальный и конечный адреса ограничивают область памяти, обращения в которую могут вызвать PER-событие.

Процесс регистрации программных событий включается битом R в PSW для разрешения прерывания по записи программных событий. При этом программные события, не замаскированные в CR9, вызывают прерывания после завершения исполнения команд, вызвавших наступление событий. Команды записи более 4KB при этом могут быть приостановлены для регистрации программного события по записи.

Программное прерывание по PER-событию устанавливает в 1 бит 8 кода прерывания и записывает в фиксированные ячейки реальной памяти с адресами 150 \div 161 следующую информацию (табл. 2.23):

  • код PERC (PER-code), идентифицирующий типы регистрируемых PER-событий;
  • поле ATMID (Addressing-and-Translation-Mode Identification), в котором указываются биты EA, BA управления разрядностью эффективного адреса, бит T управления динамическим преобразованием адреса, код AS управления режимом адресации, а также бит подтверждения достоверности поля ATMID;
  • адрес команды, при исполнении которой произошло программное событие (PER Address);
  • поле AI (PER ASCE Identification) для идентификации типа используемого ASCE при включенном DAT (Primary, AR-specified, Secondary, Home);
  • поле PAID (PER Access Identification) для указания номера регистра доступа при использовании AR-specified ASCE.
Таблица 2.23. Регистрация PER-событий
Адреса ячеек ОП
0           15
150 \div 151 PERC 000 ATMID AI
0           63
152 \div 159 PER Address
0            8
161 0000 PAID

Помимо этого, в старом PSW фиксируется адрес следующей команды и запоминается по фиксированным адресам код длины команды (ILC), вызвавшей программное событие.

Использование регистрации программных событий может снизить производительность системы, для отключения этого механизма в программе следует сбросить бит R в PSW и/или замаскировать регистрацию кодом EM в CR9.

Логическое разделение ресурсов сервера

Сервер zSeries обеспечивает три уровня конфигурирования и может функционировать с использованием одного, двух или трех уровней управления. Такими уровнями являются [2.1]:

  1. Базовая система (1-й уровень), обеспечивающая работу в базовом режиме (basic mode).
  2. Логический раздел (logical partition - LPAR), реализуемый на 2-м уровне в режиме логических разделов (LPAR mode). Режим обеспечивается гипервизором (hypervisor), который является компонентом сервера. Базовая система при этом также функционирует.
  3. Виртуальная система (3-й уровень) создается при запуске управляющей программы виртуальных машин в базовой системе или в логическом разделе. В виртуальной системе, в свою очередь, может быть запущена управляющая программа виртуальной машины, что позволяет создать виртуальные машины более высокого уровня, которые также относятся к третьему уровню конфигурации.

В серверах z990, z890 базовый режим возможен только в сочетании с режимом логических разделов и отдельно не используется. Информация об уровне, в котором исполняется программа, и о компонентах, на которых реализуется уровень, может быть получена командой STORE SYSTEM INFORMATION (STSI). Исполнение такой команды допускается только в том случае, если запрашиваемый уровень равен или меньше уровня текущей программы.

Максимальное количество разделов LPAR определяется моделью сервера и может достигать 30 для z990, z890 (в перспективе - 60) и 15 - для предшествующих генераций моделей [2.4, 2.5]. Логический раздел LPAR определен как совокупность логических ресурсов, реализуемых выделенными для него физическими ресурсами. К таким ресурсам относятся процессоры, память и каналы ввода-вывода. Каждый из LPAR, по сути, является логическим сервером, в котором обеспечивается изолированное от других LPAR исполнение собственной операционной системы z/OS, OS/390, z/VM, Linux, VSE/ESA или Coupling Facility Control Code (CFCC). LPAR всегда соотнесен с одной из логических канальных подсистем LCSS, допускающей подключение до 15 LPAR. Логический раздел может быть активирован или деактивирован в любой момент "на ходу", в то время как для создания нового или удаления ранее созданного раздела необходима остановка системы с использованием процедуры сброса по питанию POR. После создания и активации LPAR в него загружается и запускается операционная система.

Каждый логический раздел сервера характеризуется рядом параметров, которые задаются в процессе его открытия:

  • количество выделяемых для раздела ресурсов сервера: логических процессоров, памяти и каналов ввода-вывода;
  • весовой коэффициент, присваиваемый разделу для его соотношения с другими разделами в составе одного сервера при использовании общих разделяемых ресурсов;
  • ограничение на использование разделом процессоров в большем количестве, чем допускается весовым коэффициентом (LPAR capping);
  • безопасность и другие параметры.

Данные параметры и информация о выделенных для раздела ресурсах формируются через консоль управления HMC и сохраняются в дисковой памяти элемента поддержки SE в виде профиля раздела (logical partition Image Profile).

В логический раздел могут быть выделены процессоры разных типов: CP, ICF, IFL или zAAP. Каждый из процессоров может быть постоянно закреплен (dedicated) за одним разделом либо является общим (shared) ресурсом для всех LPAR. Для распределения общих процессоров между LPAR используются весовые коэффициенты, присвоенные разделам и позволяющие учесть важность и цели решаемых разделами задач [2.6, 2.7]. Вариант с общими процессорами потенциально более эффективен, так как позволяет перераспределять вычислительную мощность освобождающихся в LPAR процессоров в другие разделы. Возможно введение ограничения LPAR capping на использование разделом процессоров. Одновременное использование закрепленных и общих процессоров допустимо только в логических разделах Coupling Facility (CF). Число выделенных для раздела процессоров ограничено числом физических процессоров, используемых в модели сервера. Дополнительные резервные процессоры могут быть выделены для безостановочного расширения раздела. Вес и количество выделяемых процессоров могут динамически изменяться в процессе функционирования сервера.

Распределение основной и расширенной памяти между разделами выполняется в процессе создания LPAR и предусматривает выделение каждому из разделов части адресного пространства памяти. Максимальный объем памяти, выделяемой для одного раздела, ограничен объемом используемой в сервере памяти (для z/Architecture - 256 GB, в режиме ESA/390 - 2 GB) без учета области системной памяти HSA. Использование общих фрагментов основной или расширенной памяти разными LPAR не допускается. Объем выделяемой для раздела памяти измеряется блоками, размер которых зависит от объема инсталлированной в сервере памяти (таблица 2.24).

В процессе функционирования сервера резервная память может быть динамически перераспределена между LPAR посредством системы динамической реконфигурации памяти Dynamic Storage Reconfiguration (DSR).

Таблица 2.24. Соотношение объема инсталлированной памяти и размера блока
Объем инсталлированной памяти (GB) Размер блока для LPAR (MB)
5 \div 8 16
8 \div 16 32
16 \div 32 64
32 \div 64 128

Выделение каналов ввода-вывода для логических разделов выполняется следующими способами:

  • Закрепленные каналы предназначены для использования только в одном логическом разделе. В качестве таких каналов могут применяться любые типы каналов, поддерживаемые сервером.
  • Реконфигурируемые каналы также относятся к неразделяемым ресурсам и в каждый момент времени используются только одним LPAR, однако допускают перераспределение в другие LPAR в составе одной канальной подсистемы LCSS. Реконфигурируемыми могут быть любые типы каналов, поддерживаемые сервером.
  • Совмещенные каналы относятся к разделяемым ресурсам внутри одной LCSS. Таким каналам соответствуют несколько образов канальных путей, принадлежащих разным LPAR (см. раздел 2.2).
  • Объединенные (spanned) каналы также являются разделяемыми ресурсами, но допускают подключение к LPAR, входящим в разные LCSS.

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

Управление совместным функционированием всех LPAR осуществляется системным менеджером Processor Resource/Systems Manager (PR/SM) [2.6], реализованным на уровне милликодов системного гипервизора. Одной из основных функций PR/SM является распределение всех инсталлированных в сервер ресурсов между логическими разделами с учетом их весовых коэффициентов. Впервые системный менеджер был внедрен в 1988 году для управления четырьмя разделами и сейчас он расширен как по числу управляемых разделов (до 30 и более), так и по функциям, обеспечивающим оптимизацию управления ресурсами сервера. С этой целью логические разделы одного сервера могут быть объединены в LPAR-кластер (LPAR cluster) для оптимального управления и распределения ресурсов сервера между разделами кластера через PR/SM.

Новым дополнительным средством оптимизации использования ресурсов серверов zSeries является интеллектуальная система распределения ресурсов Intelligent Resource Director (IRD) [2.6]. Эта система объединяет функции менеджера PR/SM, реализующего приоритетное управление на уровне логических разделов, и менеджера рабочей нагрузки WLM (Workload Manager), управляющего приоритетами задач внутри LPAR. С помощью IRD реализуется автоматическое перераспределение ресурсов в LPAR-кластере с учетом сформулированных целей и важности решаемых задач. Основными функциями IRD являются:

  • менеджмент процессоров LPAR (LPAR CPU Management), включающий динамическую настройку числа логических процессоров в составе LPAR и процессорных весовых коэффициентов LPAR с учетом информации от WLM;
  • динамический менеджмент канальных путей DCM (dynamic channel path management) для перераспределения пропускной способности канальной подсистемы путем передачи каналов от менее загруженных к более загруженным периферийным устройствам;
  • организация приоритетных очередей в канальной подсистеме (Channel Subsystem Priority Queuing - IOPQ) с применением механизма канальных весовых коэффициентов LPAR для приоритетного представления каналов при выполнении операций ввода-вывода в различных LPAR.