Начальная загрузка и инициализация z/OS
Начальная загрузка z/OS производится с помощью универсальной программы начальной загрузки IPL (Initial Program Load), которая находит и считывает в память модули ядра операционной системы и запускает программу инициализации ядра NIP (Nucleus Initialization Program) [5], [6].
Нужно, чтобы к моменту загрузки были подготовлены и размещены на томах прямого доступа необходимые наборы данных, содержащие системный код, конфигурационные параметры, процедуры, а также страничные наборы данных и наборы данных, предназначенные для хранения генерируемой системой информации (статистика, журналы).
Базовый системный код (ядро z/OS) представлен в библиотечном наборе данных SYS1.NUCLEUS, который всегда размещается на так называемом системном резидентном томе (SYSRES), где должна находиться и программа начальной загрузки IPL. SYS1.NUCLEUS может включать несколько различных вариантов загрузки ядра, каждый из которых представлен в разделе IEANUC0n (n=1-9), а также программу инициализации ядра (NIP) и указатель на главный каталог. Главный каталог (Master Catalog) должен содержать информацию о размещении всех наборов данных, используемых в процессе загрузки.
Дальнейшая загрузка осуществляется под управлением программы инициализации ядра NIP, которая работает в режиме диалога с оператором и использует информацию, представленную в библиотечном наборе данных SYS1.PARMLIB. Этот набор данных состоит из множества разделов, каждый из которых содержит описание параметров конфигурации и настройки операционной системы в виде позиционного текста. Например, в разделе IEASYS содержатся значения основных системных параметров z/OS, в разделе BPXPRM - параметры настройки z/OS UNIX, в CONSOL - характеристики консолей и т.п. Набор данных SYS1.PARMLIB можно назвать системным реестром z/OS. Необходимые при загрузке параметры аппаратной конфигурации системы и характеристики устройств ввода-вывода извлекаются из VSAM набора данных IODF (Input/Output Definition File). Этот набор данных используется для создания в COMMON области блоков управления устройствами (UCB), а также таблицы назначения групповых имен устройствам (Eligible Device Table, EDT).
Кроме указанных наборов данных, на этапе загрузки формируются или используются следующие системные наборы данных:
- страничные наборы данных для временного хранения данных, вытесненных при страничном обмене и свопинге;
- SYS1.PROCLIB - системная библиотека каталогизированных процедур (содержит готовые программы на языке управления заданиями);
- SYS1.LINKLIB - системная библиотека загрузочных модулей, а также другие библиотеки, описанные в разделе LNKLST набора данных SYS1.PARMLIB (содержат нерезидентные системные программы: утилиты, программы обслуживания, редактор связей и др.);
- SYS1.LPALIB - библиотечный набор данных, содержащий дополнительные модули z/OS, загружаемые в область LPA, включая системные процедуры, SVC-программы, базовые системные программы методов доступа, некоторые TSO-модули и др. Для загрузки в LPA возможно использование других библиотек, описанных в разделе LPALST набора данных SYS1.PARMLIB;
- SYS1.MANx - VSAM набор данных, служащий для хранения статистической информации, собираемой модулем SMF (x=A-Z,0-9);
- SYS1.LOGREC - системный журнал ошибок и сбоев оборудования;
- SYS1.DUMPxx - системный дамп (содержимое виртуальной памяти), формируемый в случае ошибок при выполнении системных программ (хх=00..99).
На заключительном этапе инициализации системы создается первое виртуальное адресное пространство Master Scheduler ("главный планировщик"), которое, в частности, служит для создания новых системных адресных пространств с помощью специальной программы ACS (Address Space Create). Системные адресные пространства создаются с целью разместить системный код не в общей области, а в приватной. Можно выделить четыре группы системных адресных пространств в зависимости от способа их создания и использования (рис. 5.11):
- SYSTEM - системные адресные пространства, создаваемые на этапе инициализации автоматически с помощью главного планировщика;
- START - адресные пространства, создаваемые по команде оператора START, вводимой с системной консоли или формируемой автоматически для запуска процедур JCL;
- TSO - адресные пространства, создаваемые для каждого сеанса пользователя TSO, открываемого по команде LOGON;
- Batch Job - адресные пространства, принадлежащие пакетным инициаторам подсистемы управления заданиями JES и используемые для выполнения пакетных заданий.
Рис. 5.11. Адресные пространства z/OS
Список основных системных, а также запускаемых автоматически при инициализации операционной системы адресных пространств представлен в таблице 5.3.
*MASTER* | Главный планировщик Master Scheduler |
ALLOCAS | Создание адресных пространств и пространств данных |
APPC, ASCH | Поддержка сетевого протокола APPC |
CATALOG (CAS) | Функции каталога |
BPXOINIT | Инициализация системного сервиса UNIX |
CONSOLE | Поддержка консольных устройств |
DFM, DFMCAS, GDEDFM | Управление распределенными файлами (Distributed File Manager) |
DLF | Средства использования гиперпространств |
DUMPSRV | Средства формирования дампов |
HSM, ABARS, ABARxxxx | Менеджер иерархической памяти DFSMShsm, средства резервного копирования и восстановления |
FTPSERVE | FTP-сервер |
GRS | Средства глобальной синхронизации ресурсов |
IOSAS | Супервизор ввода-вывода, поддержка ESCON |
IXGLOGR | Системный регистратор |
JES2, JES2AUX, JES2MON | Подсистема управления заданиями JES2 |
LLA | Средства кэширования оглавлений библиотек в виртуальной памяти |
NFS | Сетевая файловая система NFS |
OAM | Сервер данных для ленточных библиотек IBM 3494 и IBM 3495 |
OMVS | Системный сервис UNIX |
PCAUTH | Поддержка межпространственной связи |
RASP | Менеджер реальной памяти RSM |
RMM | Менеджер управления сменными носителями DFSMSrmm |
RRS | Служба восстановления ресурсов |
SMF | Средства управления системой SMF (статистика и измерение производительности) |
SMS | Подсистема управления внешней памятью |
SMXC, SYSBMAS | Дополнительные средства управления PDSE наборами данных |
TCPIP | Средства поддержки TCP/IP |
TRACE | Трассировка системы |
VLF | Средства кэширования наборов данных в виртуальной памяти |
XCFAS | Средства Parallel Sysplex |
VTAM | Средства поддержки сети SNA/VTAM |
WLM | Менеджер управления рабочей нагрузкой |
Важнейшим из них является так называемая таблица векторов связей CVT (Communications Vector Table), которая хранится в области ядра и содержит указатели на основные управляющие блоки и системные таблицы, используемые базовой управляющей программой BCP. Местоположение CVT определяется по указателю, записанному в области PSA. Одним из векторов в таблице CVT является указатель на таблицу векторов адресных пространств ASVT (Address Space Vector Table), которая хранится в подпуле 245 и содержит список указателей на управляющие блоки ASCB всех доступных адресных пространств. Как уже отмечалось ранее, блок управления адресным пространством ASCB содержит информацию и указатели, необходимые для управления адресным пространством.
После того как произведен начальный запуск операционной системы z/OS, поддерживается три варианта перезагрузки:
- холодная перезагрузка (cold start) - выполняется как начальная загрузка с полной перестройкой содержимого областей виртуальной памяти;
- быстрая перезагрузка (quick start) - не перестраивается содержимое PLPA; временные наборы данных, размещенные в виртуальной памяти (так называемые VIO), не сохраняются;
- теплая перезагрузка (warm start) - содержимое PLPA не перестраивается, наборы данных VIO сохраняются.