Подробности метода сокращения загрузки Asus EeePC до 5 секунд
3 октября 2008 года
Несколько дней назад в разделе новостей была опубликована ссылка на интервью с Arjan van de Ven, которому удалось сократить время загрузки Linux на Asus Eee PC до 5 секунд, в статье "LPC: Booting Linux in five seconds" рассказано, что именно было для этого предпринято. Загрузка за 5 секунд была продемонстрирована на примере Fedora Linux и построенного на его основе Moblin.
Время было потрачено так: 1 секунда на загрузку ядра и всех необходимых модулей, еще 1 секунда на запуск init-процесса и выполнение в фоне основных системных сервисов, 1 секунда на запуск X-сервера и еще 2 секунды на запуск десктоп-окружения.
Все модули ядра, необходимые для загрузки, были вкомпилированы в ядро, загрузочный RAM-диск initrd не был использован. Для ускорения была использована возможность асинхронной инициализации подсистем AHCI (Advanced Host Controller Interface) (AHCI) и UHCI (Universal Host Controller Interface), без которой несколько секунд при загрузке тратилось на ожидание завершения инициализации. Для кеширования на этапе инициализации загрузки программ и библиотек использовалась технология readahead (Архивная копия от 11 апреля 2016 на Wayback Machine) (загрузка элементов в page cache на начальном этапе инициализации).
После загрузки ядра, выполняются следующие действия: проверка целостности файловой системы, запуск D-Bus, старт X сервера. Одновременно запускается HAL (Hardware Abstraction Layer), который использует для своей инициализации время простоя X-сервера, необходимое для настройки видео-режимов (запуск сервисов организован для минимизации простоя CPU). Уже при запущенном X-сервере стартует udev и программа инициализации сетевых устройств и параметров сетевых соединений. Благодаря тому, что перед запуском сервисов (точнее одновременно, так как данные читаются с диска непрерывно в параллельном потоке, но опережая обращение к ним) используемые в дальнейшем данные были загружены в кэш, при старте не тратится время на обращение к диску (без readahead загрузка занимает 7 секунд, вместо 5).
Результаты работы представлены на сайте moblin.org в рамках проекта Fast-boot (Архивная копия от 20 февраля 2010 на Wayback Machine), на странице которого пока можно загрузить презентацию(недоступная ссылка) и код sreadahead. Отдельно можно отметить японский LiveCD Linux дистрибутив Mach Boot, загружающийся с CD-привода за 6 секунд.
В заключение, можно упомянуть анонс новой технологии "Latitude ON", которая будет использоваться в одной из новых моделей ноутбуков Dell, поставляемой с предустановленным Linux дистрибутивом, разработанным при участии компании MontaVista. Отличительной особенностью нового продукта является возможность работать сразу после поднятия крышки ноутбука, примерно как это реализовано в смартфонах. Подход напоминает аппаратную реализацию режима "suspend to ram", когда данные сессии сохраняются в активной памяти, а процессор и другие подсистемы отключаются.
Источники
править- Главная ссылка к новости (http://lwn.net/Articles/299483...)
- Полный перевод статьи: Загрузка Linux за 5 секунд
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.