Загрузка и инициализация Unix

Загрузка и инициализация системы

 

    При включении питания запускается BIST – встроенное средство самоконтроля, которое работает в младших адресах памяти и осуществляет проверки памяти и периферийных устройств. Все результаты записываются в CMOS. После чего BIST вырабатывает сигнал RESET и запускается POST. Проверяются младшие адреса памяти, процессор, шина. Результаты также записываются в CMOS. Если во время проверок обнаружена ошибка, то система останавливается с выдачей соответствующего предупреждения. Если ошибок не обнаружено, то управление передается начальному загрузчику, который просматривает список загрузочных устройств и выбирает первое готовое. В зависимости от типа загрузчика либо начинается загрузка его первого сектора (CD), либо в связи с большими размерами в NIPL загружается BootVol, который содержит урезанное ядро и драйверы. Начальный загрузчик с диска IPL загружает это ядро, которое создает виртуальный диск, где анализирует BootVol и монтирует основной логический том. После этого ядро уничтожает виртуальный диск и запускает процесс идентификации init. Init в зависимости от режима работы системы запускает необходимые процессы и загружает драйверы.

 

    Unix может работать в нескольких режимах: многопользовательский и однопользовательский (только администратор). Однопользовательский используется при глобальной настройке. Работа в многопользовательском режиме возможна на нескольких уровнях. Это задается в /etc/inittab – текстовый файл, где каждая строка это описание процесса запускаемого на заданном уровне.

 

    Описание: имя:[уровень]:действие:[команда]

 

    Уровень – Если не указан, то используется на всех уровнях. Уровни 1..9,S,M (s – однопользовательский, 2 – многопользовательский, 3 – многопользовательский с поддержкой сетевой файловой системы).

 

    Команда – указывает на запускаемый процесс.

 

    Действие – метод запуска процесса:

 

    respawn – периодический перезапуск процесса

 

    wait – ожидая запуска

 

    once – однократно

 

    sysinit – действие по однократному запуску системного процесса, выполняющегося до входа пользователей в систему.

 

    Initdefault – определяет уровень загрузки системы по умолчанию. Когда Init впервые запускается ядром, он сначала ищет действия. Если уровень по умолчанию не задан, то он считается равным 9.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: