|
|
Компьютеры - Процесс загрузки Linux25 апреля 2011
Оглавление: 1. Процесс загрузки Linux 2. Фаза загрузчика 3. Фаза ядра 4. Процесс init
Процесс загрузки Linux представляет собой действия, посредством которых приводятся в состояние готовности операционные системы на основе Linux. Этот процесс во многом схож с загрузкой BSD и других Unix-подобных систем, от которых он и происходит.
Общий обзор процесса
При загрузке компьютера происходит последовательная передача управления от BIOS к загрузчику, а от него к ядру. Затем ядро запускает планировщик и выполняет программу Init, после чего ядро переходит в состояние бездействия до тех пор, пока не получит внешний вызов.
Основные этапы загрузки:
- BIOS выполняет загрузочные шаги, специфичные для данного аппаратного обеспечения.
- Когда все устройства распознаны и правильно запущены, BIOS загружает и выполняет загрузочный код с одного из разделов заданного загрузочного устройства, который содержит фазу 1 загрузчика Linux. Фаза 1 загружает фазу 2. Некоторые загрузчики могут использовать для этого промежуточный этап, поскольку современные диски большого объёма могут некорректно считываться без дальнейшего кода.
- Загрузчик зачастую предлагает пользователю меню с доступными вариантами загрузки. Затем он загружает ядро, которое распаковывается в память, настраивает системные функции, такие как работа необходимого оборудования и управление страницами памяти, после чего делает вызов
start_kernel .
- После этого
start_kernel выполняет основную настройку системы, а потом порождает процесс бездействия, диспетчер и отдельно от них процесс Init.
- Планировщик начинает более эффективно управлять системой, в то время как ядро переходит к бездействию.
- Процесс Init выполняет необходимые сценарии, которые настраивают все службы и структуры, не относящиеся к уровню ядра, в результате чего будет создано пользовательское окружение, и пользователю будет предоставлен экран входа в систему.
Когда происходит завершение работы, Init вызывается для управляемого закрытия программ пользовательского уровня, тоже согласно сценариям. После этого Init закрывается, а ядро производит свое собственное завершение работы.
Просмотров: 4461
|