Чтобы понять загрузку по модели System V, необходимо сначала разобраться с уровнями исполнения, которые используются для определения состояния системы после завершения процесса init.
Уровни исполнения никоим образом не связаны с аппаратным обеспечением системы, это исключительно программное понятие, init и /etc/inittab - файл, используемый для настройки init - вот два элемента, реализующих влияние уровней исполнения на систему. Применение уровней исполнения мы продемонстрируем на примере системы Red Hat Linux.
Linux определяет ряд уровней исполнения, охватывающих полный спектр возможных состояний системы, от нерабочего (система остановлена) до многопользовательского режима:
- Уровень исполнения 0 останавливает работу всех процессов, а затем и систему.
- Уровень 1 переводит систему в однопользовательский режим. Однопользовательский режим используется системным администратором для выполнения операций, которые невозможны в присутствии других работающих в системе пользователей. Этот уровень может обозначаться буквой S, а не цифрой 1. В Solaris однопользовательский режим обозначается буквой S.
- Уровень 2 - специальный многопользовательский режим, в котором не поддерживается совместный доступ к файлам.
- Уровень 3 - полноценная многопользовательская среда с поддержкой полного диапазона служб, включая совместный доступ к файлам по NFS. Это режим по умолчанию для систем Solaris.
- Уровень 4 не используется. Таким образом, существует возможность создать собственное состояние системы и реализовать его посредством уровня 4.
- Уровень 5 инициализирует систему в качестве выделенного терминала X Window. В системах Linux на этом уровне доступен вход в систему с консоли X Window. Когда система Linux загружается по уровню 3, она предоставляет пользователям для регистрации текстовую консоль. В Solaris этот уровень работы не используется. Переход на уровень 5 в Solaris приводит к останову системы.
- Уровень 6 останавливает работу всех процессов и перезагружает систему.
Теперь, когда ситуация с уровнями немного прояснилась, отметим, что в различных системах уровни исполнения трактуются по-разному. Это происходит потому, что уровни исполнения - программный компонент. Это аргументы загрузочных команд, предписывающие процессу ini t вызов определенных сценариев. Сценарии могут содержать любые допустимые команды. Отображение уровней ini t в загрузочные файлы происходит при помощи файла inittab.