Глава французской команды разработчиков Mandriva Linux рассказал (http://blog.crozat.net/2008/09/improving-boot-time-on-genera...) о проведенных оптимизациях, которые позволили значительно уменьшить время загрузки Mandriva 2009.0.
Например:
- Чистка инициализируемых на этапе загрузки устройств в системе udev (убраны старые pty), позволила уменьшить время загрузки на 2 секунды.- Включение отложенной загрузки модуля usb-storage сократило время, при подключенных usb хранилищах, на 5 секунд.
- Оптимизация образа initrd позволила выиграть от 6 до 15 сек времени для устройств подобных Asus EeePC 701.
- Модуль флоппи-привода тормозил загрузку на 2 сек.
- Запуск dkms и harddrake в неблокирующем режиме позволил сэкономить 5-7 сек.
- Кеширование программ и библиотек, используемых на этапе инициализации (readahead), уменьшило время загрузки еще на 2 сек.
- Предварительная загрузка в память наиболее интенсивно используемых данных, не дожидаясь непоср...
URL: http://blog.crozat.net/2008/09/improving-boot-time-on-genera...
Новость: http://www.opennet.me/opennews/art.shtml?num=18154
Жду с нетерпением релиза.
нехитрый расчет показывает ускорение как минимум на 30 сек. ... за сколько же она теперь грузиццо ?
>нехитрый расчет показывает ускорение как минимум на 30 сек. ... за сколько
>же она теперь грузиццо ?-10 секунд. (минус 10 секуд).
Т.е. за 10 секунд до нажатия кнопки Power уже все загружено :)
>за 10 секунд до нажатия кнопки Power уже все загружено :)+1 :))
>-10 секунд. (минус 10 секуд).А машина времени поставляется в комплекте с системой?Лайт версия чтоли - всего -10 секунд?
>нехитрый расчет показывает ускорение как минимум на 30 сек. ... за сколько
>же она теперь грузиццо ?а мне интересно, а сколько же она грузилась ! до оптимизации ? :)
>нехитрый расчет показывает ускорение как минимум на 30 сек. ... за сколько
>же она теперь грузиццо ?А если ещё раз внимательно прочитать пост, можно заметить, что для большинства пользователей не применимы одновременно все оптимизации. Или у всех тут Asus EeePC с usb-storage устройствами подключенными при загрузке?
>не применимы одновременно все оптимизации.Хм.Я что-то не заметил тут оптимизаций сильно корежащих и ломающих что-либо.Как максимум от оптимизации не будет эффекта =)
Я имел в виду, что время нельзя складывать.
>Я имел в виду, что время нельзя складывать.А это зависит от того как именно сделан старт.С классическим Init по сути можно.С остальными навроде upstart - зависит от того что и как считать.Если экономия времени происходит из-за меньшего юзания диска, CPU и прочая - то тоже можно.А если иметь в виду что параллельно работавший процесс длительностью в N секунд теперь не используется или работает M секунд - тогда да, сказать что сэкономили именно N секунд - нельзя.
>>Я имел в виду, что время нельзя складывать.
>А это зависит от того как именно сделан старт. С классическим Init по
>сути можно. С остальными навроде upstartРекомендую ещё http://lwn.net/Articles/299483/ почитать -- вот это весьма интересно.
И да, Вы немного того, ошиблись. :)
счас стоит MDV2009RC2 - я бы не сказал что она грузится быстрее, а скорее совсем наоборот - заметно медленее (относительно 2008). Версии обе FREE 32-бит. Правда всё по дефолту. Мож чего не настроил???
Я поставил 2009.0 cooker, действительно визуально шустренько, очень порадоволо, и kde4 вылизали, как работает в целом мне понравилось, пока только положительные моменты.
у меня Gentoo грузится за 28 секунд. что я делаю не так? )))
не используешь openrc?
Что то медленно у вас) точно не считал но моя гента за секунд 15 - 20... )))
>Что то медленно у вас) точно не считал но моя гента за
>секунд 15 - 20... )))Одно дело когда система стартует "по дефолту" за столько и другое - когда она это делает после бааааальшого напильника.Часто после такого напильника система не способна работать на ином железе чем у великого комбинатора-оптимизатора, что для систем "для всех" неприемлимо.
А на каком железе получается такое время как-бы не важно.
>А на каком железе получается такое время как-бы не важно.не думаю, что кто-то щас будет 2.6 ядро на Celeron 300 МГц катать... и на 128М оперативы...
>не думаю, что кто-то щас будет 2.6 ядро на Celeron 300 МГц
>катать... и на 128М оперативы...Да ладно, оно и на первом пентиуме с 32M прилично ездит. Чай не 2.6.8 на дворе...
>Да ладно, оно и на первом пентиуме с 32M прилично ездит.
>Чай не 2.6.8 на дворе...И вот так прямо с Х-ами и ездить ???
.. если честно, то я не пробовал... нету машин на 370-ом сокете в пределах видимости :)
>>Да ладно, оно и на первом пентиуме с 32M прилично ездит.
>>Чай не 2.6.8 на дворе...
>И вот так прямо с Х-ами и ездить ???С иксами, udev'ом (для флэшек), ltspfs для проброса этих самых флэшек, pulseaudio, что-то там ещё по мелочи... а, ltspinfod.
Без udev влазит и в 16M.
>если честно, то я не пробовал... нету машин на 370-ом сокете в пределах видимости :)
Первые пентиумы -- это Socket 7 (не считая 5 и тем более 4) :-)
Вот на Socket 3 тому, что мы сделали, уже не подняться (разве что чрут от LTSP4.2 взять).
PS: это про тонко-клиентскую часть ALT Terminal 4.0: http://www.opennet.me/opennews/art.shtml?num=17850
результат сборки ядра для себя был бы еффективнее проведенной оптимизации))))
ваши руки не для скуки
>результат сборки ядра для себя был бы еффективнее проведенной оптимизации))))Это привилегия этих, как его... хента... хенту... гентушников, вот :).В моем понимании такой онанизм приемлем только в 1 случае - если вы девелопаете кастомный кернел под какую-то экзотичную железку, процесс производства которой вам подконтролен и вы уверены что железки будут именно такие.
В остальных случаях это скорее ничем не оправданый онанизм и убиение времени на всякую фигню.Вот сделать универсальную систему которая быстро грузится у всех - это и полезно и почетно.А потратить кучу времени и сил на столь ничтожный и незначительный результат как выигрыш несколько в секунд, пару сотен килобайтов и прочая на *ОДНОМ* КОНКРЕТНОМ PC - это просто страдание фигней чтобы доказать самому себе что я, дескать, крут.На самом деле это скорее доказывает лишь то что у кого-то дофига свободного времени которое ничерта не стоит чтобы заниматься фигней ради ничтожного и незначительного результата.
>[оверквотинг удален]
>
>В остальных случаях это скорее ничем не оправданый онанизм и убиение времени
>на всякую фигню.Вот сделать универсальную систему которая быстро грузится у всех
>- это и полезно и почетно.А потратить кучу времени и сил
>на столь ничтожный и незначительный результат как выигрыш несколько в секунд,
>пару сотен килобайтов и прочая на *ОДНОМ* КОНКРЕТНОМ PC - это
>просто страдание фигней чтобы доказать самому себе что я, дескать, крут.На
>самом деле это скорее доказывает лишь то что у кого-то дофига
>свободного времени которое ничерта не стоит чтобы заниматься фигней ради ничтожного
>и незначительного результата.Перестань курить такую сильную траву.
вы видимо чего то в линуксе не понимаете и поетому пользуетесь логикой винъюзера))
если в вашем понимании качественная настройка и работа с операционной системой и софтом - онанизм, это ваше право так думать - для других ето более полезный интиресный процесс))))))) Собрав однажды себе ядро вы не только получите 2-3 мегабайта быстрого кода (посматрите сколько весит ваше ядро) но и возможность скомпилировать нужные и удалить ненужные модули, которые скорее всего грузятся у вас автоматом с проверкой на портебность - что никак загрузку системы не ускорит)).. также отключив подджержку ненужных устройств, прерывания от которых ваш процессор будет вынужден обрабатывать))
>вы видимо чего то в линуксе не понимаетеБоюсь, скорее Вы не понимаете ли в линуксе, ни в жизни :-( Профессионализма не наберётесь и время не вернёте. Хоть чужое-то такими "советами" не тратьте.
>Собрав однажды себе ядро вы не только получите 2-3 мегабайта быстрого кода
>(посматрите сколько весит ваше ядро) но и возможность скомпилировать нужные[прочий типовой бред поскипан]
Видите ли, собрав ядро не один десяток раз -- понимаешь, что гораздо лучше добротная сборка человека, который умеет ядро _готовить_, а не молодого упорного дятла, который только и осилил его _собирать_ (с кем из нас не бывает по молодости).Почему бред? Да потому, что Вы говорите про "оптимизацию", а при этом гробите времени куда больше, чем экономите. И ещё и впариваете это как некое достижение другим.
Процессор обработает лишнюю тыщу прерываний чуточку быстрее, чем Вы галочку в make menuconfig тыркнете. А чтоб отбить время, убитое на оптимизацию загрузки одной системы -- сколько ж раз в час надо её бутать? Этак аптаймами меряться не получится.
X-Eyes: Red
X-Employment: Student
:-/
>винъюзера))Я в любой системе предпочитаю понимать как она работает.Так доступно?В частности, по части Windows я имею кой-какое представление о структуре его ядра и прочая.А в исходниках реактоса при нужде довольно быстро найду интересующее меня место.
>ето более полезный интиресный процесс)))))))
В моем понимании затраты усилий должны оправдывать результат.Трах с системой неделю чисто ради процесса и достигнутое в результате на 1% увеличение скорости ее работы на одной конкретной машине - это фигня а не результат.
>Собрав однажды себе ядро вы не только получите 2-3 мегабайта быстрого кода
Ну расскажите мне пожалуйста, какой же выигрыш я получу в скорости если пересоберу свое х64 ядро?И главное, на чем именно я должен пытаться выиграть в скорости?У х64 вроде наборов инструкций особо наплодить не успели.Выкинуть "лишние" компоненты ума не надо.А ничего что я могу захотеть сменить комп но не переставлять систему а просто засунуть в него хард да и все.Вот в таком случае о выкидывании "лишних" компонентов придется здорово пожалеть.Убив на пересбор ядра в такой ситуации времени в сотни раз больше чем я в сумме выиграю от этих оптимизаций. "Он истратил шиллинг, заработал грош" (песенка про мельника).Вопрос: а на кой фиг мне это надо? ;)
>(посматрите сколько весит ваше ядро)
Посмотрел.Понял что все ядро весит порядка 0.1% от RAM доступной для системы.И что дальше?Сделать чтобы было не 0.1% а 0.08% или 0.07% RAM?О, блин, великое достижение.
P.S. я совсем не против озаботиться размером ядра например, когда его надо утрамбовать его в 2Mb Flash ROM в девайсе.Но я как-то против страдания онанизмом ради ничтожных целей типа "геройски расчистили 0.03% от объема RAM на одной конкретной машине".
>но и возможность скомпилировать нужные
А что, у меня разве нет этой возможности?Вот чудеса.Спасибо что открыли мне глаза.Только вот как же я тогда модуль для BTRFS то компилил без вас, а?
>и удалить ненужные модули, которые скорее всего грузятся у вас автоматом
>с проверкой на портебность - что никак загрузку системы не ускорит))..Ага, это чтобы потом при покупке нового железа и установке туда старого винта смачно обломаться?
>также отключив подджержку ненужных устройств,
Я как-то не готов заранее на пол-жизни вперед расписать для себя какие устройства мне нужны а какие не нужны.А что мне помешает купить энное устройство или поменять\проапгрейдить комп например?
>прерывания от которых ваш процессор будет вынужден обрабатывать))
Очень вот интересно стало, как вы себе представляете кучи прерываний от НЕНУЖНОГО устройства?А нельзя ли пример таких девайсов.Вот так сходу я знаю только 1 девайс который без внешних раздражителей регулярно дергает прерывания просто так - RTC.Но вот отключать его я бы не стал.
> Запуск dkms и harddrakeА если вообще не запускать всякие кривые велосипеды...
В принципе dkms придуман для того, чтобы компилить сторонние модули при смене ядра не ручками. Для того драйвера nvidia.Хотя да, это уже недостатки линухового монолитного ядра без стабильного abi:D
>В принципе dkms придуман для того, чтобы компилить сторонние модули при смене
>ядра не ручками. Для того драйвера nvidia."Тот драйвер nvidia" удобней поставлять вместе с ядром.
>Хотя да, это уже недостатки линухового монолитного ядра без стабильного abi:D
Очередной начитавшийся пионерских мнений... почитайте Documentation/stable_api_nonsense.txt насчёт стабильности A_P_I (не говоря про A_B_I), затем сделайте на ближайшем линуксе lsmod и ps aux | grep '^root.*\[k', изучите обнаруженное и подумайте сами.
Стыдно должно быть древние сказки в духе GTF пересказывать.
>"Тот драйвер nvidia" удобней поставлять вместе с ядром.~s/Тот/Тот же/
Если его там нет при переезде на новое ядро, то -> модуль не найден -> чорный экран или vesa режим (от дистра зависит).
DKMS - Dynamic Kernel Module Support.
Фреймворк позволяющий выпускать новые версии драйверов устройств не для каждой новой версии ядра, а только привязываясь к более статичному программному интерфейсу ядра (kABI).Из новости:
Программа "Partner Linux Driver Process" позволит производителем оборудования выпускать драйверы для SUSE Linux без привязки к процессу обновления ядра Linux. Novell самостоятельно будет сообщать разработчикам о всех изменениях kABI ядра, которые могут повлиять на работу драйвера и совместно адаптировать его к внесенным изменениям.
По сути, Novell предлагает выпускать новые версии драйверов не для каждой новой версии ядра, а только при изменениях более статичного программного интерфейса ядра (kABI). Для этого планируется использовать наработки DKMS (Dynamic Kernel Module Support), созданные при поддержке компании DELL.
А так да, каждые 2-3 месяца все по новой без этого.
>DKMS - Dynamic Kernel Module Support.Угу. Только без поддержки поставщиками драйверов не очень много смысла видится (хотя он тоже есть). Да и допинывают их потихоньку перестать морочить таким головы себе и всем остальным...
>А так да, каждые 2-3 месяца все по новой без этого.
Некоторым достаточно update-kernel. :)
>>А так да, каждые 2-3 месяца все по новой без этого.
>Некоторым достаточно update-kernel. :)А кто то их еще и разрабатывает, допиливает:)
>lsmod и ps aux | grep '^root.*\[k'а при это то тут?
для них может и нонсенс:)
>>lsmod и ps aux | grep '^root.*\[k'
>а при это то тут? для них может и нонсенс:)К байке про "монолитность" линукса. Модули и ядерные треды, соответственно.
Только и модули просто так не установишь - сторонние.
У меня CRUX максимум 8 секунд грузитцо в консоль на P3 800/256Mb.
+ 5 секунд в иксы и флаксбокс :P
Не знаю, сдается мне что грузится она также как и 2008. Кроме того обнаружена загрузка кучи левых модулей: нафиг мне например vbox loader по дефолту если я vbox'ом не пользуюсь.
Хм...ставил себе последню бету - 2009 okapi, на моем железе грузилсась с минуту точно