Управление операционной системой
Средства управления операционной системой (ОС) аппаратно-зависимы, однако приводимое ниже описание этих средств является довольно типичным случаем.
Операционная система хранится на дисковом томе в некотором заданном формате. Для задания формата используется команда (System III - /lbin/init) инициализации тома с одним обязательным параметром - именем спецфайла для устройства, на котором находится инициализируемый том. Остальные необязательные параметры могут указать размер логического блока - единицы передачи данных между томом и оперативной памятью и размер загрузочной области в байтах (при отсутствии их значения выбираются по умолчанию).
Каждый том имеет одну загрузочную область, содержащую целое, возможно нулевое, число логических блоков. Загрузочная область полностью находится вне какой-либо файловой системы.
Изменение ее размера возможно только путем переинициализации тома.
Каждая загрузочная область может содержать только одну ОС (или часть одной ОС).
ОС состоит из последовательности кодовых сегментов, расположенных в загрузочной области одного или нескольких томов, причем граница между томами может быть внутри некоторого сегмента. ОС хранится в загрузочном формате.
Помимо загрузочной области, ОС может располагаться также в ряде обычных файлов, каждый из которых содержит целое число кодовых сегментов, заканчивающихся двумя нулевыми байтами. Этот формат не является загрузочным, однако он может быть преобразован в загрузочный командой (System III - /lbin/oscp).
Содержимое загрузочной области в действительности состоит из одного или нескольких ОС-файлов. Каждый ОС-файл начинается с заголовка, содержащего флаг загружаемости, номер тома, число томов, занятых операционной системой. Системный загрузчик загружает ОС-файл только в том случае, если флаг установлен в состояние загружаемости. Установку состояния флагов ОС-файлов можно выполнить специальной командой (System III - /lbin/osmark) с параметром, указывающим имя спецфайла для устройства, на которое поставлен том с загрузочной областью. Ключ в этой команде устанавливает флаг в соcтояние загружаемости или незагружаемости.
Упомянутая выше команда /lbin/oscp (System III) позволяет выполнить следующие работы по копированию сегментов ОС:
- копировать ОС из одной ( или более) загрузочных областей тома (томов) в загрузочную область другого тома;
- копировать ОС из обычных файлов в ОС-файлы для создания (опция -m, merge) или модификации (опция -a, add) ОС в загрузочной области;
- копировать ОС-файлы в обычные файлы для разделения ОС на части (опция -s, split) или в один обычный файл (опция -f).
Для проверки целостности ОС в загрузочной области, а также для контроля добавленных сегментов можно выполнить команду lbin/osck (System III), например:
osck -v /dev/rhd
Опция -v вызывает печать списка имен всех сегментов ОС.
Команда проверяет корректность:
- заголовков ОС-файлов;
- списка сегментов;
- контрольной суммы каждого сегмента.
Первоначальная установка ОС или части ОС выполняется командой optinstall, а модификация версии ОС - командой optupdate. Эти команды следует выполнять в однопользовательском режиме и завершать перегрузкой системы. Данные для установки или модификации версии ОС расположены на дистрибутивном томе (обычно кассетная лента или гибкий диск). Параметром обеих команд является имя (номер) устанавливаемого или модифицируемого программного продукта.
Наконец, имеется возможность загружать несколько разных ОС (или версий одной ОС), используя одну загрузочную область на системном диске (/dev/rhd). Это выполняет команда /lbin/chsys (change system), являющаяся командным файлом. Внутри командного файла chsys используются команды oscp для перестройки загрузочной области для новой ОС чтением ее сегментов из обычных файлов, osck для последующей проверки загрузочной области. Так как chsys не проверяет, все ли пользователи закончили работу, рекомендуется перед ее выполнением выполнить команду shutdown.