OpenTag - OpenTag
Разработчик | JP Norair |
---|---|
Написано в | C |
Семейство ОС | Встроенная операционная система |
Рабочее состояние | Текущий |
Исходная модель | Открытый исходный код |
изначальный выпуск | 2011 |
Последний релиз | 0.4.0 / 8 ноября 2012 г. |
Маркетинговая цель | Беспроводные сенсорные сети |
Доступно в | английский |
Платформы | MSP430, STM32 |
Ядро тип | Exokernel |
Лицензия | Лицензия OpenTag |
Официальный веб-сайт | OpenTag вики |
OpenTag это DASH7 стек протоколов и минимальный Операционная система реального времени (RTOS), написано в Язык программирования C. Он предназначен для работы на микроконтроллеры или радио Системы на кристалле (SoC). OpenTag был разработан как очень компактный программный пакет. Однако при правильной настройке он также может работать в любом POSIX среда. OpenTag также может обеспечивать все функции, необходимые для любого типа устройства DASH7 Mode 2, а не только для одноименного оконечного устройства типа «тег».
Философия дизайна
Эта секция может быть слишком техническим для большинства читателей, чтобы понять. Пожалуйста помогите улучшить это к сделать понятным для неспециалистов, не снимая технических деталей. (Сентябрь 2013) (Узнайте, как и когда удалить этот шаблон сообщения) |
OpenTag реализует режим 2 DASH7, который определяет монолитная система охватывающий OSI слои с первого по шестой, часть седьмого слоя, а также прикладной уровень. OpenTag разработан, чтобы быть легким и компактным, поскольку он предназначен для работы на микроконтроллерах с ограниченными ресурсами. Как монолитная система, она не реализует разные уровни модели OSI таким образом, чтобы их можно было развернуть в системах, которые отличаются от типичных и почти универсальных, MCU +РФ архитектура приемопередатчика, используемая WSN и M2M узлы.[1] Однако в OpenTag RTOS используется экзоядро архитектура (начиная с версии 0.4), поэтому монолитное ядро не требуется. Приложения, разработанные для OpenTag, могут безопасно ссылаться на библиотеку или напрямую обращаться к оборудованию, что соответствует модели проекта экзоядра.
Функции
- Имеет легкий упреждающая многозадачность exokernel RTOS.
- Большинство ядер используют задачи с фиксированным приоритетом.
- Он содержит полный стек протоколов DASH7 Mode 2, включая
- Он использует Выравнивание износа, Вспышка на основе легкий файловая система (Веелит).
- Он имеет внутренний C-based API.
- Он имеет внешний API обмена сообщениями на основе NDEF для клиент-сервер взаимодействие.
Выполнение
OpenTag реализует многозадачное ядро реального времени, разработанное специально для реализации DASH7. Пользовательские задачи могут управляться ядром, и они могут вытеснять ядро, хотя они должны выделяться во время компиляции. Частота планирования или разрешение ядра зависит от реализации, но она должна быть не менее 1024 Гц и должна быть целым числом, кратным 1024 Гц.[2]
Использование событий ядра обратные вызовы для вызова пользовательского кода приложения, который называется «апплетами». Расширенные шаблоны используются для обеспечения функциональности обратного вызова, которая эффективна для встраиваемых сред. Таким образом, обратные вызовы в OpenTag могут быть динамическими (назначаемыми во время выполнения) или статическими, что требует назначения во время компиляции, но снижает накладные расходы. Поскольку OpenTag реализует экзоядро, пользовательские задачи могут полностью управляться ядром, они могут управляться частично ядром и частично внешними событиями, или они могут полностью управляться внешними событиями. Связь между задачами и ядром осуществляется через API системных вызовов и интерфейс канала сообщений.[3]
Внешний API OpenTag использует упрощенный клиент-сервер модель[4] и NDEF для упаковки данных. Оболочка NDEF особенно используется для проводной связи между клиентом и сервером, где клиент обычно является устройством с интерфейсом пользователя, а сервер - SoC OpenTag. Внутренний API предоставляется в виде 1: 1 с внешним API, что позволяет клиенту действовать во многом как внешний процесс ядра OpenTag.
Поддерживаемые устройства
На момент написания большая часть оборудования OpenTag реализована на Инструменты Техаса CC430 или MSP430 устройства, которые одобрены для использования с OpenTag.[5] Однако текущие исходные деревья OpenTag поддерживают многие другие микроконтроллеры и радиочастотные трансиверы, например, различные типы STM32, CC11xx и Semtech Компоненты SX12xx.[6]
Рекомендации
- ^ «Обзор возможностей OpenTag». OpenTag Вики. Indigresso.com. Получено 9 июля 2012.
- ^ Норайр, JP. «Создание приложений DASH7 с помощью OpenTag». Получено 9 июля 2012.
- ^ «OpenTag API». OpenTag Вики. Получено 9 июля 2012.
- ^ «Архитектура клиент-сервер OpenTag». OpenTag Вики.
- ^ «Абсолютно новый CC430 сочетает в себе ведущий микроконтроллер MSP430 и маломощную радиочастотную технологию». ti.com. Инструменты Техаса. Получено 9 июля 2012.
- ^ "Основной репозиторий OpenTag". Получено 9 июля 2012.