LINUX.ORG.RU
ФорумTalks

Принципиально новая система инициализации

 ,


2

1

Намедни проснулся, хотел подняться с дивана - и тут меня осенило: что суть есть система инициализации? Это сущность, управляющая процессом загрузки системы, запуском системных сервисов в зависимости друг от друга, опционально распараллеливающая запуск тех сервисов, которые друг на друга не завязаны. Стоп, но есть же кое-что, что изначально было спроектировано как менеджер зависимостей с возможностью распараллеливания - это ж Make! И переделок больших не нужно - все, что могут обычные шелл-скрипты, в рамках Makefile возможно. Собственно, эта мысль так меня потрясла, что с дивана я так и не поднялся. Интересно было бы услышать мнения по этому поводу, а также ответ на вопрос, почему это никому раньше в голову не пришло (честно искал - не нашел)

Ответ на: комментарий от Barracuda72

systemd. как его представляют альтернативномыслющие. Или оптимизация init, как её представляют разумные люди.

ziemin ★★
()
Ответ на: комментарий от Barracuda72

Искал - не нашел. Может, плохо искал, конечно

https://wiki.debian.org/BootProcessSpeedup#Parallelizing_init.d_scripts

Parallel concurrent booting (using startpar) should now be active by default. Check that CONCURRENCY=makefile is set in /etc/init.d/rc.

i-rinat ★★★★★
()
Ответ на: комментарий от ziemin

Это не совсем то. Systemd же не запускает непосредственно make, и sysvinit с openrc тоже. У них есть механизмы разруливания зависимостей и параллельного запуска, но я говорю как раз о замене этих своих механизмов на изначально предназначенный для этой задачи инструмент. Или они все-таки под капотом могут использовать GNU Make?

Barracuda72 ★★
() автор топика
Ответ на: комментарий от Barracuda72

Шелл скрипты та ещё кобыла, это да.

Deleted
()
Ответ на: комментарий от Barracuda72

Это я видел, но оно ведь все равно использует обычные shell-скрипты, разве не так?

Лучше это, чем ужасные хтонические Makefiles.

shimon ★★★★★
()

БЫСТРО УДАЛИ ТЕМУ!!!! А то Поцеринг увидит и встроит в systemd свой велосипед аналогичный make! Может даже scons и PERL интегрирует!

Quasar ★★★★★
()

а что-то в этой идее есть определённо...

только ты себе представляешь, как ужасно этот Makefile будет выглядеть?

Harald ★★★★★
()

мысль любопытная на первый взгляд.

AndreyKl ★★★★★
()
Ответ на: комментарий от i-rinat

Ну так в том и разница, что Make изначально нацелен на разруливание всей этой непотребщины, а в том же sysvinit оно где-то сбоку прикручено - зависимости в комментариях в скрипте записаны, как там параллельность работает - я даже и не знаю

Barracuda72 ★★
() автор топика
Ответ на: комментарий от ziemin

И снова я не въезжаю, чего ты имел в виду. Эта прекомпиляция там есть или ты ее добавить предлагаешь?

Barracuda72 ★★
() автор топика
Ответ на: комментарий от Valkeru

Леннарт берет проверенные годами решения и выбрасывает их на помойку, заменяя своим УГ. Я наоборот предлагаю заменить часть системы инициализации на решение, десятилетиями затачивавшееся для общего вида подобной задачи. Анти-леннарт, что ли... :)

Barracuda72 ★★
() автор топика
Ответ на: комментарий от Barracuda72

а как ты, например, собираешься создавать правила для поднятия сетевых интерфейсов? Или загрузку/выгрузку random seed в /dev/random?

Harald ★★★★★
()
Ответ на: комментарий от DELIRIUM

спасибо капитан, но топик не об этом.

maloi ★★★★★
()

Интересно было бы услышать мнения по этому поводу, а также ответ на вопрос, почему это никому раньше в голову не пришло (честно искал - не нашел)

Потому что ты школьник. Школьникам часто приходят в голову (потому что там пусто) Идеи Вселенского Значения, Никем До Этого Не Открытые.

NaN
()
Ответ на: комментарий от Harald

Это уже детали. Все, что возможно в рамках shell-скриптов, возможно и в Make-файлах

Barracuda72 ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.