Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС.docx
Скачиваний:
2
Добавлен:
22.09.2019
Размер:
471.16 Кб
Скачать

8. Генерация, конфигурирование, настройка операционных систем на потребности

конкретного пользователя.

Генерация ОС: сборка из модулей конкретной рабочей операционной системы.

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

  • настройка конфигурируемого оборудования

  • выбор режима вычислительного процесса

  • установление параметров стандартных программ

  • установка ограничений и параметров по умолчанию

  • включение в состав ОС дополнительных супервизорных программ

Генерация осуществляется в несколько стадий (2-3 стадии для больших систем).

Сейчас используется инсталляция, а раньше система поставлялась в виде полуфабрикатов особенно для мэйнфрэймов и она генерировалась (разворачивалась) на конкретной машине под потребности конкретного пользователя, т.е. там задавалось большое количество констант (сколько может одновременно процессов, сколько сетевых соединений и т.п.) и генерировалось для конкретных машин и пользователей.

Главное отличие: инсталляция – более простой процесс, т.к. система уже есть, она просто устанавливается, а генерация такой полуфабрикат, который в процессе установки ещё и настраивается на какие-то параметры системы. более характерно для мэйнфрэймов (IBM360, IBM370 – система ОС IBM).

При генерации Unix:

  1. Выбираются необходимые компоненты из дистрибутива

    1. определяется, какое аппаратное обеспечение будет поддерживаться системой;

    2. компилируется ядро;

    3. создаётся раздел свопинга с собственной файловой системой;

    4. генерируется пароль root а также login/password пользователя;

    5. определяется состав системного программного обеспечения: языки отладки, трансляторы, редакторы, интерпретаторы и т.д.

    6. может быть инсталлирован windows-подобный интерфейс (например, гном).

  2. После этого:

    1. устанавливается дополнительное программное обеспечение: как системное, так и пользовательское.

    2. Устанавливаются различные ограничения (число пользователей, терминалов, задач и параметров по умолчанию)

Настройка ОС на потребности конкретного пользователя:

Настройка Unix может осуществляется как администратором, там и другими пользователями в соответствии с их правами. Администратор имеет расширенные права доступа, по сравнению с остальными пользователями, также он может работать в режиме суперпользователя – root (можно изначально войти в систему под root или запустить программу SU под обычным пользователем). Суперпользователь имеет все

полномочия по управлению всеми файлами всех пользователей.

В обязанности администратора системы, как правило, входит:

  1. загрузка и выгрузка системы

  2. регистрация новых пользователей (полный перечень пользователей содержится в файле /etc/passwd (каждая запись соответствует одному пользователю) + учётный файл для группы /etc/group. Каждый пользователь может быть включён в несколько пользовательских групп и он будет обладать соответствующими правами пользователя);

  3. обеспечение сохранности файловой системы

  4. восстановление файловой системы

  5. ведение системного журнала (администратор обязан следить за памятью и числом процессов в системе (≤30000) Системный журнал расположен в файле /usr/adm/wtmp. В него заносится информация о входе пользователей в систему и о выполняемых командах. Периодически этот файл администратор очищает).

Каждый пользователь имеет свой домашний каталог, который определён в соответствии с именем и паролем (в файле etc/passwd). Для настройки ОС на потребности конкретного пользователя в UNIX используются профили. Для каждого пользователя может загружаться 2 профиля: общесистемный стартовый профиль и профиль конкретного пользователя.

  • Профиль пользователя расположен в файле .profile (настраивает среду конкретного пользователя, содержится в домашнем каталоге пользователя). Этот файл позволяет пользователю определить или настроить переменные среды, характеристики терминала, а так же выполнить любое приложение при входе в системы.

  • Общесистемный стартовый файл /etc/profile (выполняется для всех пользователей, работающих с Borne, Korn или Posix-shell'ом). Содержимое общесистемного стартового файла формируется системным администратором и обычному пользователю не разрешается менять его содержимое.

Отсроченный старт пользовательских программ: можно организовать отсроченный старт программ, задав время и режим их запуска. Программа cron, которая читает команды из файла /usr/lib/crontab. В этом файле (/usr/lib/crontab) каждая строчка задаёт время выполнения команды или повторяющегося выполнения. Установка прав пользователя: Можно установить права доступа к файлам/каталогам (команда chmod, см. билет 2), а так еж ограничить объём памяти, расходуемой пользователем (команда du).

Конфигурирование:

Для конкретных настроек в Unix существует переменные окружения. Это область памяти, которая выделяется операционной системой для каждого shella пользователя. В ней хранится (как минимум) – характеристики аппаратуры, какой тип Shell, имя Home Directory, приглашение. Переменные окружения наследуется запущенным процессом и могут быть им изменены. Каждый пользователь может иметь на нескольких терминалах различные shell с различными переменными окружения.

Ядро ОС UNIX состоит из 2-х частей: первая часть включает в себя примитивное управление процессами (инвариантно по отношению к аппаратуре), а вторая часть включает в себя драйверы устройств (зависят от аппаратуры). Такая организация реализует принцип минимальной зависимости от аппаратуры.

Как происходит загрузка системы:

  1. получает управление BIOS, который анализирует доступные устройства для загрузки;

  2. на устройстве находится главная загрузочная запись MBR и считывается;

  3. MSDOS помещался целиком в MBR, а сейчас там лишь малая часть помещается, т.н. первичный загрузчик (512 байт сектора – (44 байт таблицы разделов и 2 байта сигнатуры) = количество байт, выделенное под загрузчик), цель которого найти вторичный загрузчик, загрузить его в ОП и передать ему управление;

  4. вторичный загрузчик загружает ядро ОС (в Linux ядро хранится в запакованном виде, поэтому его ещё и распаковывает – код распаковщика находится внутри ядра);

  5. управление передаётся ядру, которое анализирует оборудование, чтобы проанализировать все драйверы устройств и пометить неактивные устройства (специализированные приборные файлы (свой файл для каждого устройства), которые создаются при генерации или изменении состояния системы. Хранятся в /dev. Существует 2 типа: c (байт-ориентированные) и b (блок-ориентированные). Специальные файлы не имеют длинны, вместо неё указывается номер типа устройства и номер устройства среди однотипных);

  6. после того, как все драйверы устройств проинициализированы, определяется какая система является корневой, её монтирование;

  7. запуск процесса init (с id = 1, id=0 - своппер) и ему передаётся управление, с которым начинает работать планировщик;

  8. init анализирует свои таблицы inittab и с помощью fork() начинает создавать другие процессы, которые и поднимают ОС;