Апач Майньютт
Эта статья нуждается в дополнительных цитатах для проверки . ( ноябрь 2018 г. ) |
![]() | |
Разработчик | Apache Software Foundation , сообщество |
---|---|
Написано в | C (Новая ОС) Перейти (Инструмент Ньют) |
Рабочее состояние | Стабильный |
Исходная модель | с открытым исходным кодом |
Последний выпуск | 1.11.0 / 7 сентября 2023 г [ 1 ] |
Репозиторий | github |
Платформы | Cortex-M0 , Cortex-M3 , Cortex-M4 , Cortex-M7 , MIPS32 , Микрочип PIC32 , RISC-V |
Лицензия | Лицензия Апач 2.0 |
Официальный сайт | минута |
Apache Mynewt — модульная операционная система реального времени для подключенного Интернета вещей (IoT). [ 2 ] устройства, которые должны работать в течение длительного времени при ограничениях по мощности, памяти и памяти. Это бесплатное программное обеспечение с открытым исходным кодом, развивающееся под эгидой Apache Software Foundation . [ 3 ] с исходным кодом, распространяемым по лицензии Apache License 2.0 , разрешительной лицензии, способствующей коммерческому внедрению программного обеспечения с открытым исходным кодом . [ 4 ]
Обзор
[ редактировать ]Apache Mynewt — это операционная система реального времени с богатым набором библиотек, предназначенная для упрощения создания прототипов, развертывания и управления 32-битных микроконтроллеров вещей на базе устройствами Интернета . [ 5 ] Он легко компонуется, что позволяет создавать встраиваемые системные приложения (например, замки, медицинские устройства, промышленный Интернет вещей) на различных типах микроконтроллеров. Имя Mynewt представляет собой игру слов из английского слова «minute» , что означает «очень маленький»: размер ядра составляет всего 6 КБ.
ОС предназначена для подключения и поставляется с полной реализацией стека Bluetooth Low Energy 4.2. С добавлением BLE (поддерживающего все функции безопасности, совместимые с Bluetooth 4.2, кроме конфиденциальности) и различных утилит, таких как файловая система по умолчанию, консоль, оболочка, журналы, статистика и т. д., размер образа составляет примерно 96 КБ для Nordic nRF51822 Bluetooth SoC. . [ 6 ] Этот показатель размера исключает образ загрузчика .
Основные функции
[ редактировать ]Базовая операционная система поддерживает: [3]
- Вытесняющая многопоточность
- на основе приоритетов Бестиковое планирование
- Программируемые таймеры
- Системное время
- Семафоры
- Мьютексы
- событий Очереди
- Управление памятью (распределение): динамическое (куча) и пул
- Многоступенчатый программный сторожевой таймер
- Буферы памяти или данных для хранения пакетных данных при их перемещении вверх и вниз по стеку сетевых протоколов.
Другие функции и утилиты включают в себя:
- Уровень аппаратной абстракции с поддержкой времени ЦП , аналого-цифрового преобразователя (АЦП), цифро-аналогового преобразователя (ЦАП), ввода/вывода общего назначения (GPIO), межинтегральной схемы ( I). 2 C ), широтно-импульсная модуляция (ШИМ), последовательный порт , шина последовательного периферийного интерфейса (SPI), универсальный асинхронный приемник/передатчик (UART).
- Newtron Флэш-файловая система (nffs) с минимальным использованием оперативной памяти и функциями надежности
- Абстракция файловой системы, позволяющая клиентскому коду выбирать альтернативные файловые системы.
- Доступ к консоли и пакет оболочки
- Безопасный загрузчик и органайзер образов (менеджер), который включает проверку целостности образа с использованием SHA-256 и дополнительную проверку цифровой подписи образов перед их запуском.
- Тестовые утилиты для построения регрессионного тестирования
- Статистика и логи для всех основных пакетов
- нотации объектов JavaScript ( JSON ) Библиотеки кодирования и декодера
- Lua- интерпретатор
Bluetooth с низким энергопотреблением
[ редактировать ]Первый сетевой стек, доступный в Mynewt, — это Bluetooth с низким энергопотреблением. [ 7 ] и называется NimBLE. Он соответствует базовой спецификации Bluetooth 4.2. [ 8 ]
NimBLE включает в себя компоненты хоста и контроллера. Доступ к исходному коду контроллера обеспечивает широкие возможности настройки производительности BLE. Например, пропускную способность BLE можно регулировать путем изменения интервалов подключения, размера пакета данных, размера очереди пакетов и т. д. Аналогичным образом можно настроить вариант использования, требующий большого количества одновременных подключений, при условии, что выделено достаточно оперативной памяти. В пакет включены примеры приложений, демонстрирующие использование доступных сервисов.
Поддерживаемые платы
[ редактировать ]Операционная система предназначена для кроссплатформенного использования во встроенных системах (устройствах) и микроконтроллерах. По состоянию на июль 2023 г. он включает пакеты поддержки следующих плат: [update]: [ 9 ]
- nRF52 DK от Nordic Semiconductor (Cortex-M4)
- Платформа маяка RuuviTag Sensor (на базе Nordic nRF52832)
- nRF51 DK от Nordic Semiconductor (Cortex-M0)
- VBLUno51 от VNG IoT Lab (на базе процессора Nordic nRF51822)
- VBLUno52 от VNG IoT Lab (на базе SoC Nordic nRF52832, Cortex-M4)
- BLE Nano от RedBear (на базе SoC Nordic nRF51822)
- BLE Nano2 и Blend2 от RedBear (на базе процессора Nordic nRF52832)
- БМД-300-ЭВАЛ-ЕС от Ригадо (Cortex-M4)
- БМД-200 от Ригадо (Кортекс-М0)
- Adafruit Feather nRF52 Pro
- STM32F4DISCOVERY от ST Micro (Cortex-M4)
- STM32-E407 от Olimex (Cortex-M4)
- Ардуино Ноль (Cortex-M0)
- Ардуино Ноль Про (Cortex-M0)
- Ардуино М0 Про (Кортекс-М0)
- Ардуино MKR1000 (Cortex-M0)
- Ардуино Примо NRF52 (Cortex-M4)
- НУКЛЕО-F401RE (Кортекс-М4)
- НУКЛЕО-F767ZI (Кортекс-М7)
- Комплект Discovery для серии STM32F7 (Cortex-M7)
- FRDM-K64F от NXP (Cortex-M4)
- BBC micro:bit (Nordic nrf51822; Cortex-M0)
- SiFive HiFive1 (архитектура набора команд RISC-V)
- Модуль NINA-B1 BLE от u-blox (Cortex-M4)
- 6Кликер LoWPAN от МикроЭлектроника (микроконтроллер PIC32MX470)
- чипKIT Wi-FIRE (микроконтроллер PIC32MZ)
- Модуль Creator Ci40 (два процессора MIPS interAptiv)
- Плата EE-02 с чипом Semtech Sx1276 от Telenor (Cortex-M4)
- DA1469x Pro DK от Dialog Semiconductor (Cortex-M33)
Управление пакетами
[ редактировать ]Проект включает в себя Newt Tool, который представляет собой исходного кода на основе интерфейса командной строки (CLI) интеллектуальную систему менеджера пакетов для разработки встроенных систем. Кроме того, он позволяет составлять сборки с указанными пакетами и параметрами компилятора, генерировать образы и их цифровые подписи и, наконец, загружать и отлаживать прошивку на разных целях.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Скачать — Apache Mynewt» . mynewt.apache.org . Фонд программного обеспечения Apache . Проверено 7 октября 2023 г.
- ^ «Arduino и Runtime сотрудничают для внедрения Apache Mynewt (инкубация) в экосистему Arduino» . globalnewswire.com (пресс-релиз). 20 мая 2016 года . Проверено 24 мая 2016 г.
- ^ «Статус инкубации Mynewt — инкубатор Apache» . incubator.apache.org . Проверено 24 мая 2016 г.
- ^ «Apache Mynewt RTOS устраняет ограничения мощности, памяти и хранилища IoT» . www.infoq.com . Проверено 28 июня 2016 г.
- ^ «Открытая ОСРВ нацелена на сеть вещей» . www.eetimes.com . Проверено 24 мая 2016 г.
- ^ «нРФ51822» . Архивировано из оригинала 17 мая 2016 г. Проверено 24 мая 2016 г.
- ^ «Apache Mynewt нашел свое применение в новейших SBC от Arduino Srl» . www.linuxtoday.com . Архивировано из оригинала 28 мая 2016 г. Проверено 24 мая 2016 г.
- ^ Базовая спецификация Bluetooth 4.2
- ^ «Получение помощи» . Гитхаб .
Внешние ссылки
[ редактировать ]- Встроенные операционные системы
- Свободное программное обеспечение, операционные системы
- Интернет вещей
- Операционные системы реального времени
- Бесплатное программное обеспечение, написанное на C.
- Бесплатное программное обеспечение, написанное на Go.
- Программное обеспечение, использующее лицензию Apache