Компания ARM открыла исходные тексты встраиваемой операционной системы mbed OS

Компания ARM представила бета-выпуск новой встраиваемой операционной системы mbed OS, развиваемой для оснащения потребительских устройств, соответствующих концепции «Интернет вещей» (IoT, Internet of Things). Код операционной системы распространяется под лицензией Apache 2.0. Одновременно доступны для тестирования такие сопутствующие компоненты, как облачный сервис mbed Device Connector, клиент для подключения сторонних решений mbed Client, прослойка для связывания устройств с web-приложениями mbed Device Server и реализация протокола TLS для mbed OS. 0_1441745506.png

В качестве ключевых целей проекта называется поддержка коммуникационных возможностей, соответствующих стандартам, низкое энергопотребление и обеспечение высокой безопасности. Система рассчитана на оснащение продуктов, основанных на микроконтроллере ARM Cortex-M, и предоставляет средства для создания приложений для умных домов, умных городов и носимых устройств. Для проектирования новых устройств предоставляется среда разработки и инструментарий для быстрого создания прототипов устройств. В качестве основы для построения устройств предлагается использовать типовые платы и модули-расширения с реализацией различных сенсоров, технологий беспроводной связи, двигателей, экранов и т.п.

Каждое устройств тесно взавимодействует с облачным сервисом, через который осуществляется координация их работы и взаимодействие. Система имеет событийно-ориентированную архитектуру (Event Driven Architecture) и обеспечивает однопоточное выполнение, что позволяет применять mbed OS для наиболее простых, компактных и дешёвых аппаратных систем на базе микроконтроллеров, а также реализовать эффективные схемы снижения энергопотребления. Для обработки системных и пользовательских событий в mbed OS реализован простой планировщик. Для взаимодействия с оборудованием предоставляется абстрактный слой HAL и набор драйверов для типовых перифирийных устройств, таких как порты SPI и I2C ports, слоты GPIO и таймеры.

Для защиты на уровне системы применяются похожая на гипервизор низкоуровневая прослойка uVisor, использующая аппаратные механизмы микроконтроллеров ARMv7M для изоляции выполнения компонентов системы. Кроме того, в mbed OS реализован механизм верификации устанавливаемых обновлений и процесса загрузки. Для каналов связи применяется TLS-шифрование. Мониторинг и управление устройством осуществляются при помощи протокола OMA Lightweight M2M (LWM2M). Взаимодействие с другими устройствами и сервисами осуществляется с использованием протокола CoAP (Constrained Application Protocol).

0_1441745638.png

©  OpenNet