Эта статья требует дополнительных ссылок для проверки . ( ноябрь 2018 г. ) ( Узнайте, как и когда удалить это сообщение-шаблон ) |
Разработчик | Apache Software Foundation , сообщество |
---|---|
Написано в | C (Mynewt OS) Go (Newt Tool) |
Рабочее состояние | Стабильный |
Исходная модель | Открытый источник |
Последний релиз | 1.9.0 / 7 апреля 2021 г . [1] |
Репозиторий | Репозиторий Mynewt |
Платформы | Cortex-M0 , Cortex-M3 , Cortex-M4 , Cortex-M7 , MIPS32 , Микрочип PIC32 , RISC-V |
Лицензия | Лицензия Apache 2.0 |
Официальный веб-сайт | mynewt |
Apache Mynewt - это модульная операционная система реального времени для подключенных устройств Интернета вещей (IoT) [2], которые должны долгое время работать в условиях ограничений питания, памяти и хранилища. Это бесплатно и с открытым исходным кодом инкубирование под Apache Software Foundation , [3] с исходным кодом распределенного под Apache License 2.0 , разрешительные лицензиями, которая способствует коммерческому принятию с открытым исходным кодом . [4]
Обзор [ править ]
Apache Mynewt - это операционная система реального времени с богатым набором библиотек, предназначенная для упрощения прототипирования, развертывания и управления устройствами IoT на основе 32-разрядных микроконтроллеров . [5] Он легко компонуем, что позволяет создавать встроенные системные приложения (например, замки, медицинские устройства, промышленный Интернет вещей) на различных типах микроконтроллеров. Название Mynewt - это игра слов от английского слова « минута» , что означает очень маленький: размер ядра составляет всего 6 КБ.
ОС предназначена для подключения и поставляется с полной реализацией стека Bluetooth 4.2 с низким энергопотреблением . С добавлением BLE (поддерживающего все функции безопасности, совместимые с Bluetooth 4.2, за исключением конфиденциальности) и различных утилит, таких как файловая система по умолчанию, консоль, оболочка, журналы, статистика и т. Д., Размер образа составляет примерно 96 КБ для Nordic nRF51822 Bluetooth SoC. . [6] Этот показатель размера не включает образ загрузчика .
Основные функции [ править ]
Основная операционная система поддерживает: [3]
- Вытесняющая многопоточность
- Бесконтактное планирование на основе приоритета
- Программируемые таймеры
- Системное время
- Семафоры
- Мьютексы
- Очереди событий
- Управление памятью (распределение): динамическое (куча) и пул
- Многоступенчатый программный сторожевой таймер
- Память или буферы данных для хранения пакетных данных при их перемещении вверх и вниз по стеку сетевых протоколов.
Другие функции и утилиты включают:
- Уровень аппаратной абстракции с поддержкой процессорного времени , аналого-цифрового преобразователя (ADC), цифро-аналогового преобразователя (DAC), ввода / вывода общего назначения (GPIO), межинтегральной схемы ( I²C ), ширины импульса модуляция (PWM), последовательный порт , шина последовательного периферийного интерфейса (SPI), универсальный асинхронный приемник / передатчик (UART).
- Newtron файловая система флэш - памяти (nffs) с минимальным использованием оперативной памяти и обеспечения надежности
- Абстракция файловой системы, позволяющая клиентскому коду выбирать альтернативные файловые системы
- Консольный доступ и пакет оболочки
- Безопасный загрузчик и организатор образов (менеджер), который включает проверку целостности образа с помощью SHA-256 и дополнительную проверку цифровой подписи образов перед их запуском
- Утилиты тестирования для создания регрессионного тестирования
- Статистика и журналы для всех основных пакетов
- Библиотеки кодировщика и декодера JavaScript Object Notation ( JSON )
- Интерпретатор Lua
Bluetooth с низким энергопотреблением [ править ]
Первый сетевой стек, доступный в Mynewt, - это Bluetooth с низким энергопотреблением [7] и называется NimBLE. Он соответствует спецификации Bluetooth Core 4.2. [8]
NimBLE включает в себя как хост, так и компоненты контроллера. Доступ к исходному коду контроллера позволяет легко настраивать производительность BLE. Например, пропускную способность BLE можно регулировать, изменяя интервалы соединений, размер пакетов данных, размер очереди пакетов и т. Д. Аналогичным образом можно настроить сценарий использования, требующий большого количества одновременных соединений, при условии, что выделено адекватное ОЗУ. В пакет включены примеры приложений, демонстрирующих, как использовать доступные службы.
Поддерживаемые доски [ править ]
Операционная система предназначена для кросс-платформенной использования в встраиваемых систем (устройств) и микроконтроллеров. По состоянию на март 2017 года он включает следующие пакеты поддержки плат [Обновить]:
- nRF52832 Bluetooth SoC от Nordic Semiconductor
- nRF51822 / nRF51422 Bluetooth SoC от Nordic Semiconductor
- STM32F3DISCOVERY с STM32 F3xx серии Cortex-M4 от ST
- STM32-E407 для STM32F407ZGT6 Cortex M4 от ST
- Arduino Zero и Zero Pro
- Arduino M0 Pro с ATSAMD21G18 Cortex M0
- Arduino 101 , только контроллер Bluetooth
- Arduino Primo , контроллер Bluetooth и хост
Управление пакетами [ править ]
Проект включает в себя Newt Tool, который представляет собой интеллектуальную систему управления пакетами исходного кода на основе интерфейса командной строки (CLI) для разработки встроенных систем. Кроме того, он позволяет составлять сборки с указанными пакетами и параметрами компилятора, генерировать образы и их цифровые подписи и, наконец, загружать и отлаживать микропрограммы для различных целей.
См. Также [ править ]
- Встроенная операционная система
- Сравнение операционных систем реального времени
Ссылки [ править ]
- ^ "Скачать - Apache Mynewt" . mynewt.apache.org . Фонд программного обеспечения Apache . Проверено 13 апреля 2021 .
- ^ «Arduino и среда выполнения сотрудничают, чтобы представить Apache Mynewt (инкубационный) в экосистеме Arduino» . globenewswire.com . Проверено 24 мая 2016 .
- ^ «Статус инкубации Mynewt - инкубатор Apache» . incubator.apache.org . Проверено 24 мая 2016 .
- ^ «Apache Mynewt RTOS обращается к мощности Интернета вещей, памяти и ограничениям хранилища» . www.infoq.com . Проверено 28 июня 2016 .
- ^ «Открытая ОСРВ нацелена на сеть вещей» . www.eetimes.com . Проверено 24 мая 2016 .
- ^ "nRF51822" . Архивировано из оригинала на 2016-05-17 . Проверено 24 мая 2016 .
- ^ "Apache Mynewt находит дом на последних SBC Arduino Srl" . www.linuxtoday.com . Проверено 24 мая 2016 .
- ^ Основные характеристики Bluetooth 4.2
Внешние ссылки [ править ]
- Официальный веб-сайт
- Репозиторий исходного кода Apache Mynewt