За последние десять лет большинство проектов с открытым исходным кодом переместились от рынка персональных компьютеров и мобильных устройств к интернету вещей. В этой статье мы рассмотрим дистрибутивы Linux для интернета вещей и встраиваемых устройств. Кроме специализированных, новых дистрибутивов мы рассмотрим здесь несколько облегченных вариантов, например, OpenWRT.
Все приведенные здесь дистрибутивы Linux не требуют много памяти, имеют модульную и настраиваемую структуру, отлично поддерживают беспроводные технологии и сенсорные устройства. Но в список дистрибутивы для IoT не входят легкие системы, которые хоть и оптимизированы для низкого потребления ресурсов, все еще предназначены для работы на персональном компьютере. Тем не менее Linux Lite и LXLE все же могут использоваться для IoT. А теперь давайте перейдем к списку.
1. Brillo
В этом году Google выпустила Brillo, легкий дистрибутив на основе Android. Он завоевал популярность среди пользователей плат Intel Edison и Dragonboard 410c. Будущее этой системы связано с протоколом коммуникации Weave, который здесь используется. Этот протокол реализует функции выделения ресурсов, аутентификацию и многое другое. Для работы системы достаточно 32 Мб ОЗУ и 128 Мб постоянной памяти.
2. Huawei LiteOS
LiteOS — это операционная система от Huawei, которую не следует путать с дистрибутивом Linux. Она основана на Linux, но компания внесла очень много изменений. Ядро системы занимает не больше 10 Кб. LiteOS используется на MCU устройствах, которые имеют процессоры, совместимые с Android.
Система имеет множество интересных функций, среди которых автоматическое обнаружение сетей, работа в режиме реального времени, широкая поддержка беспроводных устройств и сотовой сети. Собственно, все тоже же самое, что могут другие дистрибутивы linux IoT.
3. OpenWrt
Известный дистрибутив Linux, ориентированный на создание сетей, тоже может использоваться как Linux для встраиваемых устройств. Легкая операционная система OpenWrt очень часто встречается на маршрутизаторах и роутерах, а также различных платах Wifi.
Недавно были созданы форки OpenWrt такие как DD-Wrt и Linino, ориентированный на Arduino. А организация LEDE обещает более стабильный цикл разработки дистрибутива.
4. Ostro Linux
Этот дистрибутив от проекта Yocto получил много внимания в середине августа, когда Intel выбрала его для своего модуля Intel Joule, который работает на последнем четырехъядерном чипе Atom SoC T5700. OstroLinux совместим с IoTivity, а также поддерживает множество беспроводных технологий и датчиков. Дистрибутив фокусируется на безопасности уровня программного обеспечения, устройства и данных. Дистрибутив доступен в двух редакциях — обычной и медиа.
5. Raspbian
Существует несколько дистрибутивов, разработанных для Raspberry Pi, но Raspbian все еще является лучшим. Это один из самых популярных дистрибутивов для DIY проектов на одной из широко используемых платформ IoT. Разработчики могут найти сотни уже готовых проектов, а также справочных материалов. Теперь, когда Raspbian поддерживает Node-RED есть еще меньше причин выбирать ориентированный для IoT Thingbox.
6. Snappy Ubuntu Core
Это версия популярного дистрибутива Ubuntu для встраиваемых устройств с механизмом установки пакетов Snap. Canonical разрабатывает Snap, как универсальный формат пакетов, которые будут работать на персональных компьютерах, серверах, смартфонах и IoT устройствах.
Ubuntu Snappy Core поддерживает откаты обновлений, безопасные обновления, поддержка облака и магазина приложений для платформы. Для работы Ubuntu Snappy достаточно процессора с частотой 600 МГц, 128 Мб оперативной памяти, а также 4 Гб памяти на диске. Дистрибутив Linux для встраиваемых устройств может работать на платах Pi и других устройствах с подобными характеристиками, включая дроны Erle-Copter, шлюзы Dell Edge, Nextcloud Box и LimeSDR.
7. Tizen
Система разрабатывается при поддержке Samsung и Linux Foundation и использует основной стек программного обеспечения Linux, но по-прежнему очень редко встречается на рынке мобильной связи. Тем не менее, она широко используется на телевизорах от Samsung и умных часах, включая новые Gear S3, также может работать на другой бытовой технике. Tizen может работать даже на Raspberry Pi. Также Samsung начали внедрять эту систему в свою концепцию умный дом. Возможно, скоро стоит ожидать улучшенную интеграцию с модулями Artik и Artik Cloud.
8. uClinux
uClinux — это единственная, упрощенная версия Linux для встраиваемых устройств, которая может работать на микроконтроллерах Cortex-M3, M4, и -M7 моделей. Для uClinux необходимы микроконтроллеры со встроенным контроллером памяти или которые могут использовать внешний чип памяти DRAM.
Преимущества uCLinux уже в виде поддержки большого количества беспроводных технологий уже были добавлены в основную ветку ядра Linux. Чаще всего uClinux используется на устройстве EmCraft, в котором есть достаточно модулей для полноценной работы Linux.
9. Yocto Project
Проект Yocto — это не совсем дистрибутив Linux, но это проект с открытым исходным кодом, который ставит перед собой цель предоставить разработчикам шаблоны, инструменты и методы для создания программного обеспечения встраиваемых устройств. Поскольку вы можете настроить эту систему с минимальными затратами, она часто используется для IoT. Yocto Projet используют в качестве основы почти все коммерческие дистрибутивы Linux для IoT, также на нем основан Ostro Linux и Qt для IoT.