Ускорение загрузки системы (Gentoo Linux)

Чтото вспомнилось вдруг время, когда оттюнинговывал Win95, WinMe.., так что Me грузился за 10 сек на компе - p3 753 мГц + 128mb. Посмотрел на текущее время загрузки на ноуте - centrino 1729 + 1.5mb + Gentoo и немного недоволен остался.. Сравнения конечно совсем не уместные, но ситуация думаю всем понятна.

Вобщем решил немного исправить положение, вот замеры до оптимизаций времени загрузки:

12:kernel (время от нажатия энтера в lilo до начала инициализации сервисов)
31:services (инициализация сервисов, сюда же входит загрузка udev и тп., вобщем всё после появления строчки init version ..., появляющейся когда ядро загружено)
07:x11 (от перехода на 7-ю консоль до появления крестика мышки)
07:xdm (kdm) - от появления крестика мышки до диалога логина
27:kde (от нажатия ентер в диалоге логина до полного исцезания экрана заставки)
summary - 84

Результаты после оптимизации:

10:kernel
23:services
06:x11
06:xdm (kdm)
13:kde
summary - 58

Больше ускорить пока не получается, итого получился прирост в - 26 секунд.

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

Что делалось:
1) Как видно из начальных замеров, много времени занимает старт сервисов, начнём с него:
был выбор, ускорять через (initng или baselayout2) +- RC_PARALLEL_STARTUP. Пробовал все комбинации. В авторане у меня следующее:
alsasound | boot
bootmisc | boot
checkfs | boot
checkroot | boot
clock | boot
consolefont | boot
cupsd | default
gpm | default
hald | default
hibernate-cleanup | boot
hostname | boot
hplip | default
keymaps | boot
local | default nonetwork
localmount | boot
modules | boot
net.lo | boot
netmount | default
rmnologin | boot
sshd | default
urandom | boot
vixie-cron | default
xdm | default

убрать ничего не могу, всё используется, большого ускорения я не ожидал, т.к достаточно много времени тратилось не на запуск большого колличества маленьких скриптов (в этом случае и будет наибольший выигрыш initng), а в получении ip по dhcp от wifi точки + монтировании fs.
Результаты
- паралельная загрузка в моём случае процесс не ускорила (-1,2 сек иногда)
- от initng - отказался, из-за проблем с загрузкой сервисов (надо вручную мигрировать многие старые на его систему инициализации). Даже не стал до конца сервисы переводить на него, т.к увидел что прироста существенного не будет, время отжиралось, как я уже сказал раньше - на полезную работу.
- baselayout2 - о чудо, ребята из этой команды переработали инициализацию сетевых устройств, переписали код на чистом С, и много ещё чего сделали (читаем тут basalayout2). В результаты сеть стала инициализироваться заметно быстрее, и общее время запуска сервисов сократилось на - (31-23)=8 сек. (парвда в связи в изменением синтаксиса пришлось около ~20-ти конфигов вручную мёрджить :), но дело того стоило)

2) Давно конфиг ядра оптимизаровал, для версии 2.6.15 ещё, проревьювил и его..
в результате - уменьшил размер образа с 2.789 кб до 1996 кб. Получил выигрыш ещё в 2-е секунды.

3) Приступил к оптимизации графики, глобально можно было повлиять на ускорение prelink-ом, с него и решил начать (http://www.gentoo.org/doc/ru/prelink-howto.xml).
После отработки 'prelink -amvRf' зашёл в kdecenter и убрал прелоадинг конкваера и обновление базы mime и меню при загрузке (то что не рекомендуется, но т.к. софт сейчас добавляю редко - ничего страшного). Сервисы у меня уже по минимуму стоят.

И получил последний скачок скорости:
x11 + kdm - выигрыш 2 секунды
kde - (27-13) = 14 секунд.

Субъективно от прелинка приложения kde-шные стартовать чуть быстрее стали, особенно - kdevelop, kopette, recoll, kaffeine, konquaror. gimp - значительно быстрее стал, почти как простенький граф. редактор стратует. OO - с 12 секунд до 10 время запуска сократил. Но это уже отлонение от темы :) говорим о скорости загрузки системы.

Буду крайне благодарен за ещё какие-либо советы по оптимизации, так же думаю для всех, будут полезны описания ваших жизненных ситуаций - в какой конфигурации, после чего, насколько - удалось ускорить.

PS. hibernate это конечно хорошо, но не всегда приемлим, особенно когда проблемы после выхода из него. Если кто с помощь ining достиг существенно лучших результатов чем с baselayout2 отпишитесь пж-та, и приведите обязательно свой - "rc-update -s".

Источник

free-templates.ru