Хотелось бы достигнуть наибольшей возможной скорости инициализации системы. Для этого можно было бы включить в один код на Си зпуск демонов, монтирование файловых систем, инициализацию драйверов и т.п.
Проблемы обычного sysvinit:
Система должна быть хоть немного интерактивной, хотя на первых этапах об этом можно не задумываться.
Очень бы хотелось сохранить интерактив, подобный тому, что предоставляет sysvinit, так как он весьма прост в реализации и понятен системным администраторам. Им не придётся переучиваться.
Если пользователь захочет изменить набор запускаемых сервисов или порядок их запуска, исходный файл на Си будет перегенерирован и перекомпилирован. Это напоминает принцип работы загрузчика LILO, для которого надо запускать процедуру перегенерации MBR и PBR при любых вмешательствах в конфигурационные файлы или изменениях ядра.
Запуск каждого демона можно описать в отдельном текстовом файле. При добавлении сервиса в автозапуск, подобно тому, как это делается в sysvinit, система инициализации должна отследить изменения в каталогах /etc/rc*.d/ (условно) и сконкатенировать код запуска демона в код init'a. Сразу после этого файл компилируется со всеми возможными оптимизациями (компилировать такой init как-то иначе смысла нет), такими как march=native, O3 и flto.
Библиотечную функцию execve можно попробовать реализовать на ассемблече с помощью удобных макросов.
uf4n