1.48, kuku (?), 16:49, 16/12/2011 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
>Так как модулей загружается достаточно много, утилита modprobe может
>вызываться сотни раз, при этом не каждый запуск modprobe приводит к
>загрузке модуля так как модуль может уже быть загружен. Подобные
>действия приводят к большой паразитной >нагрузке и замедляют
>процесс загрузки.
Хорошо.
вводное: Каждое устройство имеет PCI идентификатор.
Этому ID соответствует модуль, который
может зависить от других модулей.
Либо он есть, либо его нету.
Полагаю что имя модуля уникально.
И как она может вызываться "сотни" раз ?
Если вызывается, по списку загруженных модулей
пройтись не судьба ?
Дальше.
Для ускорения загрузки Linux конфигурация и
компиляция ядра уже не нужна ?
А вообще, одебилить всё можно, но не дебилам
как бы от этого не легче.
От этого Linux более конкурентноспособным
не станет.
Для серверов это нахер ненадо.
А тем, кому нравится перезагружать Linux,
типа "I like to move it, move it", пусть
выберут что-нибудь другое.
| |
|
2.54, Ваня (?), 16:59, 16/12/2011 [^] [^^] [^^^] [ответить]
| –16 +/– |
При загрузке драйвер может получать список драйверов. Напр. (абстрактно) драйвер кэша диска проверяет что загружен драйвер диска, или драйвер брандмауэра проверяет наличие хотя бы одного драйвера сетевой карты, и т.п.
Как это делать? Сейчас через вызов утилиты и парсинг текстовика. Хмм... 21 век вроде...
Теперь будет API, который будет возвращать структуры и возможно (не знаю) даже энумератор, как в Windows, сокращающий нагрузку и затраты памяти (по сути энумератор - ссылка на элемент существующего L1, поэтому при запросе достаточно найти первый элемент, соответствующий отбору, а не выбирать весь список).
Драйверов много и вызовов тоже много.
| |
|
3.56, Lain_13 (?), 17:01, 16/12/2011 [^] [^^] [^^^] [ответить]
| +4 +/– |
Он предложил конфигурировать и собирать ведро на каждой конкретной железяке. 21 век вроде на дворе… Дальше можно было его не читать и даже не отвечать.
| |
|
2.62, Hugo Reyes (ok), 17:28, 16/12/2011 [^] [^^] [^^^] [ответить]
| +1 +/– |
есть системы, где скорость загрузки критична.
вполне уже сейчас можно применять linux с RT-патчами в системах управления, когда важна скорость восстановления системы при различных аппаратных сбоях и случайных ошибках. Рестарт должен длиться доли секунды.
| |
|
3.71, arisu (ok), 18:41, 16/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
> Рестарт должен длиться доли секунды.
и там не используют кастомное ядро без всяких удевов, а ставят полновесную универсальную систему? верю! и в то, что луна из лимбургского сыра сделана — тоже верю!
| |
|
4.83, Аноним (-), 23:48, 16/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
> и там не используют кастомное ядро без всяких удевов, а ставят полновесную
> универсальную систему?
Ну так будет поменьше плясок с бубнами и в таких случаях. Или тебе нравится когда система работает в стиле виндус висты, загружаясь 5 минут?
| |
|
5.95, arisu (ok), 11:20, 17/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
> Ну так будет поменьше плясок с бубнами и в таких случаях.
в каких? чего «меньше»? хинт: система, неоптимайзнутая производителем под его железо, называется «халтура».
| |
|
6.97, cjayho (?), 12:59, 17/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
>>хинт: система, неоптимайзнутая производителем под его железо, называется «халтура».
Вы это разработчикам netBSD скажите, которые годами пилят архитектуру своей оси так чтобы ее можно было запустить на любом поддерживаемом компилятоом железе без изменения кода, только прекомпилировав под соотв. платформу.
| |
|
7.101, Aleksey Salow (ok), 13:12, 17/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
>>>хинт: система, неоптимайзнутая производителем под его железо, называется «халтура».
> Вы это разработчикам netBSD скажите, которые годами пилят архитектуру своей оси так
> чтобы ее можно было запустить на любом поддерживаемом компилятоом железе без
> изменения кода, только прекомпилировав под соотв. платформу.
Кто вам такое сказал? Там есть прослойка аналогичная HAL в винде которую и нужно писать под конкретное железо чтобы можно был взлететь. Компиляция спасёт только если кто-то уже постарался до вас.
| |
|
|
|
4.93, Аноним (-), 08:22, 17/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
В потребительских девайсах - да, полновесную универсальную систему. И да, там нажна скорость загрузки.
| |
|
5.96, arisu (ok), 11:21, 17/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
> В потребительских девайсах - да, полновесную универсальную систему. И да, там нажна
> скорость загрузки.
и RT-ось, угу. посколькув оригинале ляпнул чушь, начал съезжать. abtreten!
| |
5.100, Aleksey Salow (ok), 13:09, 17/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
> В потребительских девайсах - да, полновесную универсальную систему. И да, там нажна
> скорость загрузки.
А можно пример этих самых потребительских девайсов?
| |
|
|
3.92, Aleksey Salow (ok), 04:34, 17/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
Ещё наши деды поняли что там где это критично проще продублировать (3, 4 системы в резерве) чем городить непонятно что.
| |
|
4.104, asipin (??), 01:03, 18/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
> Ещё наши деды поняли что там где это критично проще продублировать (3,
> 4 системы в резерве) чем городить непонятно что.
И лучше разных.
| |
|
|
2.82, Аноним (-), 23:46, 16/12/2011 [^] [^^] [^^^] [ответить]
| +3 +/– |
> Для серверов это нахер ненадо.
Зато в куче других мест - очень даже надо. Холодильники, телефоны и прочие точки доступа должны стартовать настолько быстро насколько возможно.
| |
|
3.103, anonymous (??), 16:25, 17/12/2011 [^] [^^] [^^^] [ответить]
| +1 +/– |
В холодильниках, телефонах и прочих embedded, производитель собирает систему под конкретный девайс и обходится без всяких udev, как было сказано выше. Система стартует мгновенно, просто загрузив ядро.
| |
|
|
|
2.72, arisu (ok), 18:42, 16/12/2011 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Давно пора. Хорошо, что такое важное новшество всё же запилили.
есть мнение, что не такое уж оно и важное, раз до сих пор вполне нормально без него жили.
| |
|
3.87, Аноним (-), 00:36, 17/12/2011 [^] [^^] [^^^] [ответить]
| +2 +/– |
> есть мнение, что не такое уж оно и важное, раз до сих
> пор вполне нормально без него жили.
Ну если так рассуждать, тогда развивая мысль, на хлебе и воде можно в принципе перекантоваться.
| |
3.111, lucentcode (ok), 05:52, 07/01/2012 [^] [^^] [^^^] [ответить]
| +/– |
>> Давно пора. Хорошо, что такое важное новшество всё же запилили.
> есть мнение, что не такое уж оно и важное, раз до сих
> пор вполне нормально без него жили.
С сегодняшнего дня этот инструментарий установлен у меня на машине, люблю всё новое.
| |
|
|
1.75, Аноним (-), 19:31, 16/12/2011 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> Использование библиотеки позволит избавить от необходимости вызова внешних утилит
А что, execve(2) у нас уже дорогой стал? Объясните, зачем линковаться динамически с библиотекой? Что, оверхэд у libc такой злой, что тратится куча времени?
modprobe/insmod, ясен пень, после первых запусков будут в кэше, mmap и готово. А то и раньше — заранее readahead положит.
Не осознаю.
| |
|
2.81, Аноним (-), 22:34, 16/12/2011 [^] [^^] [^^^] [ответить] | +/– | Начало моего сообщения под номером 8 80 Я думаю дело в гибкости системы То чт... большой текст свёрнут, показать | |
|
3.109, kuku (?), 14:53, 20/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
Хорошее замечание.
Отдельный механизм работы с модулями ?
В ядро всегда будут встроены модули, необходимые
для загрузки ОС на данной машине. И машины бывают
разные, со своими "капризами". И вариации устройств
к ним не всегда бывают большими.
| |
|
2.84, Аноним (-), 00:07, 17/12/2011 [^] [^^] [^^^] [ответить]
| +1 +/– |
> А что, execve(2) у нас уже дорогой стал?
Дороже просто вызова в либу. Загрузка с диска бинаря, его парсинг, загрузка секций, педалинг релокейшнов и инициализация переменных, вгрузка всех потребных бинарю либ если кого еще нет в памяти, etc. В 100500 раз больше действий. Если в случае опача половина действий скипается т.к. бинарь уже висел в памяти, то всякие там modprobe - не демон, в памяти его никто не держит.
| |
2.85, Аноним (-), 00:09, 17/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
> А то и раньше — заранее readahead положит.
Вы так говорите как будто на диске оно лежит в виде дампа который достаточно в оперативку вгрузить. Агащаз.
| |
|
3.86, Аноним (-), 00:30, 17/12/2011 [^] [^^] [^^^] [ответить]
| –2 +/– |
Он в памяти. Если друг за другом запускается, то вся загрузка, разбор бинарника и динамическое связывание пройдет один раз (в первый).
| |
|
4.88, Аноним (-), 00:38, 17/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
> Он в памяти. Если друг за другом запускается, то вся загрузка, разбор
> бинарника и динамическое связывание пройдет один раз (в первый).
Только при условии что оно не успеет выгрузиться из памяти во всех копиях. А поскольку это не демон - очень даже успеет и будет каждый раз парситься/догружать + свой конфиг парсить и прочий бред. Так что в целом направление мысли у этих кексов правильное.
| |
|
5.89, Аноним (-), 01:17, 17/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
>Только при условии что оно не успеет выгрузиться из памяти во всех копиях. А поскольку это не демон - очень даже успеет и будет каждый раз парситься/догружать + свой конфиг парсить и прочий бред. Так что в целом направление мысли у этих кексов правильное.
Убеждаюсь в очередной раз что люди педалируют те идеи которые им понятны. Однако, скорость исполнения, загрузка/выгрузка - это в совокупности лишь второстепенные вещи по отношению к проекту. Вы вдумайтесь насколько часто сегодня в обычной (не загрузка и запуск/перезапуск служб) работе системы этот функионал востребован (случами разработки и отладки/тестирования модулей ядра или ядра можно и вовсе пренебречь).
| |
|
6.90, Аноним (-), 02:14, 17/12/2011 [^] [^^] [^^^] [ответить]
| +/– |
Я согласен что это не сильно приоритетное занятие и в списке насущных проблем оно хренадцатым номером, но если кому охота это написать - пусть будет :)
| |
|
|
|
|
|
1.105, Стас (??), 12:04, 18/12/2011 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Мало библиотек, надо ещё добавить. Ну кому интересно, пусть пользуются, чего там. А так библиотека представляет чисто спортивный интерес сделать скорость загрузки linux сравнимой со скоростью загрузки dos. )
| |
|