Добрый вечер. BerkutEagle. Спасибо за Ваш вопрос, это риторический вопрос, какой дистрибутив лучше. В первую очередь, это зависит от вашей задачи. Если для меня, то лучше использовать сборщик Buildroot. Так в нем, вы выберете то что необходимо для вашего проекта, и не более. Т.к в готовом образе, есть куча всего нужного и не нужного.
Buildroot и openwrt — это принципиально разные вещи.
Проект Buildroot — это очень гибкий сборщик вашей embedded системы, где путем удобного интерфейса вы настраиваете и самостоятельно собираете свою систему.
Если же брать проект Openwrt.
То есть два пути получение образа вашей embedded системы.
1-й ) Вы заходите на официальный сайта и качаете уже собранный образ под вашу целевую платформу (Например, Orange Pi).
Если же брать проект buildroot, вам необходимо собрать свой образ, используя свой config или defconfig под свое ус-во, с офф сайта вы не скачаете готовый образ.
2-й) Вы выкачиваете, например из Git исходники openwrt, и с помощью так называемой системы сборки openwrt вы можете собрать свой образ.
Но тут не следует путать, данные сборщики — это не одно и тоже.
Например, попробуйте указать в сборщике Openwrt версию ядра, которую вы хотите использовать. Сборщик Openwrt заточен более под Networking.
Yocto? LFS для совсем уж? Сравнение, плюсы-минусы? К тому же, buildroot сам выкачивает и собирает кросскомпилятор, как и бутлоадер и rootfs, надо только в конфике все настроить.
OpenWRT — сказано, что ОС. Но это дистрибутив. По какой-то причине не сообщается, что его можно собрать под себя и что это чуть ли не главный плюс. Кстати, юзается он не только для домашних руктеров, но и во многих Enterprise железках.
Yocto — упоминается вскользь и то как пример сборочных систем. А стоило бы сказать, что это, на сегодня, основная система поставки BSP, для мультимедийных процессоров ещё и Android поставляют.
Рассказ про полностью ручную сборку дистрибутива и опять таки оооочень вскользь. Почему вместо этого не написать, что так делать не нужно, а просто разобраться с Yocto/Buildroot или OpenWRT на худой конец.
Embedded systems это далеко не linux системы, даже можно сказать далеко не самая многочисленная. Есть микроконтроллеры, на которые linux не поместиться физически.
Добрый вечер. KonstantinSpb. Полностью с Вами согласен. Если брать, сегмент микроконтроллеров, то тут больше уклон идет на системы реального времени (RTOS). Например, такие известные, как EmbOS, FreeRtos, KeilRTX и т.д. Либо, старая школа, без ОС (вечный цикл + стейт машина + прерывания).
Какой дистрибутив лучше использовать для вашей embedded системы?