Операционные системы IoT

1. Определение

Операционные системы (ОС) для IoT устройств представляют собой наборы функций для управления аппаратной частью и прикладными программами для устройств с ограниченным размером памяти.

2. История создания и развития

После появления первой вещи, подключенной к сети – тостера, 1990 год – разработчикам стало понятно, что существующие операционные системы не удовлетворяют требованиям новых устройств. В то же время наступил новый этап в развитии операционных систем – создание более сложных, производительных и мобильных ОС. В настоящее время практически во всех операционных системах заявлена возможность работы с устройствами Интернет вещей. 

Однако не все из них действительно удовлетворяют таким требованиям Интернет вещей как: небольшой объем занимаемой памяти, высокая энергоэффективность, поддержка современных беспроводных технологий и совместимость с сенсорными сетями. Особую популярность имеют операционные системы с открытым исходным кодом.

Различают два основных вида операционных систем: UNIX-подобные операционные системы, и ОС, не основанные на Linux. Наиболее популярные из первых – это Ostro Linux, Raspbian, uClinux, из вторых – Contiki, RTOS, Fuchsia, TinyOS, RIOT OS, Windows 10 IoT и другие.

3.

Технические характеристики. Рассмотрим некоторые популярные операционные системы для IoT-устройств:

  • Contiki – служит для связи маломощных контроллеров с сетью Интернет, занимает не более 10 кбайт памяти;

  • TinyOS – написана на языке NESC, часто используется для устройств беспроводных сенсорных сетей;

  • FreeRTOS – ОС реального времени, способная работать при 1 кбайте свободной памяти и до 10 кбайт оперативной памяти;

  • RIOT OS – для 16 и 32-разрядных процессоров, поддерживает программирование на языках С/С++;

  • Brillo – представляет собой упрощенную версию системы Android, работает при 32 Мбайт долговременной памяти и 128 Мбайт оперативной;

  • Lite OS – основана на Ubuntu компанией Huawei, обладает функцией быстрой загрузки, для работы необхдима память не менее 10 кбайт;

  • Ostro Linux – для 32-разрядных процессоров, с поддержкой брандмауэра и безопасной загрузки;

  • ARM Mbed OS – для 32-разрядных контроллеров, с использованием языков С/С++, для работы необходимо 8 кбайт памяти;

  • Windows 10 IoT – последняя версия ОС от компании Microsoft с минимальными требованиями 256 Мбайт оперативной памяти и 2 Гбайт долговременной.

4. Кейсы применения

Конкретную операционную систему выбирают в зависимости от текущих задач и имеющегося оборудования: контроллера, датчиков и т.д. Интернет вещи, оснащенные простейшими процессорами и чипами и способные собирать и передавать большое количество данных об окружающей среде и собственной работе центральному мощному узлу, должны иметь операционную систему для эффективной работы в сети.

5. Полезные ссылки