Разработчики: | Linux Foundation |
Дата премьеры системы: | 2016/02/18 |
Технологии: | Интернет вещей Internet of Things (IoT), ОС |
Zephyr - проект, в рамках которого ведётся разработка компактной операционной системы реального времени (RTOS). Продукт ориентирован на использование в устройствах, соответствующих концепции "Интернет вещей" (IoT, Internet of Things).
18 февраля Linux Foundation анонсировала совместный проект Zephyr. Наработки проекта поставляются под лицензией Apache 2.0. Участники проекта: Intel, NXP Semiconductors/Freescale, Synopsys и UbiquiOS[1].
Представление проекта Zephyr (2016)
На 18 февраля 2016 года для загрузки доступны первый выпуск ядра Zephyr Kernel 1.0 и набор Zephyr SDK, в составе которого инструменты и кросс-компиляторы сборки ядра для различных аппаратных платформ. Система адаптирована для установки на платы на архитектуре x86 (Arduino 101, Quark D2000 CRB, Galileo Gen1/Gen2, Minnowboard Max), ARMv7 (Arduino Due, Freescale FRDM-K64F) и ARC (Arduino 101) и для тестирования в эмуляторе на основе QEMU. В составе SDK:
- GCC,
- binutils,
- gdb,
- libgcc,
- newlib,
- Python 2.7,
- QEMU,
- GNU Make
- OpenOCD (Open On-Chip Debugger).
Ядро рассчитано на потребление минимальных ресурсов (от 8 КБ до 512 КБ ОЗУ, в зависимости от компоновки), что позволяет использовать его в различных портативных системах, от простых встраиваемых датчиков и чипов для одежды, до умных часов и беспроводных шлюзов для IoT-устройств. Из средств сетевого и беспроводного взаимодействия ядром поддерживается Bluetooth 4, IPv4, IPv6, IEEE 802.15.4, Bluetooth Low Energy (BLE), 6lowPAN (IPv6 over Low power Wireless Personal Area Networks), CoAP (Constrained Application Protocol), DTLS (Datagram Transport Layer Security). Доступны драйверы ввода/вывода для ADC, GPIO, I2C и SPI.Бизнес уходит в облако: стратегии и подходы
Особенности ядра Zephyr
- Работа в едином адресном пространстве (SASOS, Single Address Space Operating System) - для всех процессов предоставляется только одно глобальное совместно используемое виртуальное адресное пространство. Специфичный для приложений код комбинируется с адаптированным под конкретное применение ядром и образует монолитный исполняемый файл для загрузки и запуска на определённом оборудовании. Код приложений и ядра выполняются в одном общем адресном пространстве.
- Широкие возможности по настройке. В системный образ могут включаться только те возможности ядра, которые требуются для выполнения приложения;
- Все системные ресурсы определяются на этапе компиляции, что сокращает размер кода и увеличивает производительность;
- Минимальные проверки ошибок во время выполнения, что также сокращает размер кода и увеличивает производительность. В форме подключаемой надстройки для отладки предлагается специальная отладочная инфраструктура, позволяющая выявлять ошибки во время разработки приложения, создавая специальные тестовые образы;
- Обширный набор привычных сервисов для разработки:
- Многопоточность на основе приоритетов с вытесняющей и совместной моделью передачи управления;
- Подключение обработчиков прерываний, регистрируемых как на этапе компиляции, так и во время выполнения;
- Средства синхронизации данных между потоками - двоичные семафоры, семафоры-счетчики и мьютексы;
- Средства передачи данных между потоками - простые очереди сообщений, расширенные очереди сообщений и байтовые потоки;
- Сервисы для распределения памяти - динамическое выделение памяти и очистка для блоков памяти фиксированного и динамического размера;
- Механизмы управления питанием: режим tickless (вместо фиксированного вызова по таймеру, процессор просыпается только при наличии событий) и расширенная инфраструктура управления простоем процессора (idle).
- Разработка с оглядкой на безопасность. Все стадии разработки проходят обязательные этапы подтверждения безопасности кода: fuzzing-тестирование, статический анализ, испытания на проникновение, рецензирование кода, анализ внедрения бэкдоров и моделирование угроз. Поставка в виде статически собранного исполняемого файла ограничивает вектор атак только скомпилированным кодом, без возможности загрузить свои модули.
Примечания
Подрядчики-лидеры по количеству проектов
ИндаСофт (102)
Мобильные ТелеСистемы (МТС) (58)
М2М телематика (45)
Цифра (39)
АйТиПроект (ITProject) (30)
Другие (573)
РИР (Росатом Инфраструктурные решения) (7)
Цифра (5)
ИндаСофт (4)
Ростелеком-Юг (3)
Orange Business Services (Оранж Бизнес Сервисез, Эквант) (3)
Другие (42)
Мобильные ТелеСистемы (МТС) (9)
Цифра (7)
Датапакс (4)
Юникорн (3)
РИР (Росатом Инфраструктурные решения) (3)
Другие (30)
Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров
OSIsoft (1, 108)
М2М телематика (16, 74)
Мобильные ТелеСистемы (МТС) (15, 44)
Цифра (8, 44)
РИР (Росатом Инфраструктурные решения) (2, 34)
Другие (669, 416)
РИР (Росатом Инфраструктурные решения) (1, 7)
Цифра (2, 5)
Ростелеком (2, 4)
OSIsoft (1, 4)
Лаборатория умного вождения (ЛУВ) (3, 3)
Другие (18, 23)
Мобильные ТелеСистемы (МТС) (3, 8)
Цифра (1, 7)
РИР (Росатом Инфраструктурные решения) (1, 4)
Датапакс (1, 4)
Юникорн (1, 3)
Другие (12, 13)
Цифра (2, 6)
РИР (Росатом Инфраструктурные решения) (2, 4)
Simetra (ранее А+С Транспроект) (1, 4)
Юникорн (1, 3)
МегаФон (2, 2)
Другие (7, 7)
Simetra (ранее А+С Транспроект) (1, 9)
Цифра (2, 3)
РИР (Росатом Инфраструктурные решения) (1, 3)
Юникорн (1, 2)
AirBit (АирБит) (2, 1)
Другие (13, 13)
Распределение систем по количеству проектов, не включая партнерские решения
PI System - 108
M2M-Cyber GLX - 50
Цифра: Диспетчер Система мониторинга промышленного оборудования и персонала - 36
Росатом Умный город - 33
ITProject RFID Platform - 29
Другие 438
Росатом Умный город - 7
ZIIoT Платформа для работы с промышленными данными - 4
PI System - 4
Ujin OS Платформа для создания умных домов и зданий (ранее MySmartFlat и Sapfir) - 3
Siemens MindSphere - 3
Другие 27
Цифра: Диспетчер Система мониторинга промышленного оборудования и персонала - 7
МТС Цельсиум - 5
Росатом Умный город - 4
Датапакс: Сервис мониторинга пассажиропотока - 4
Ujin OS Платформа для создания умных домов и зданий (ранее MySmartFlat и Sapfir) - 3
Другие 14
RITM3 - Real time integration transport measurements modelling managemet - 4
Цифра: Диспетчер Система мониторинга промышленного оборудования и персонала - 4
Росатом Умный город - 3
Ujin OS Платформа для создания умных домов и зданий (ранее MySmartFlat и Sapfir) - 3
ZIIoT Платформа для работы с промышленными данными - 2
Другие 10
Подрядчики-лидеры по количеству проектов
НППКТ (17)
Almi Partner, Алми партнер (ГК Алми) (7)
Ред Софт (Red Soft) (4)
РусБИТех-Астра (ГК \"Астра\")
Кортис (4)
Другие (46)
НППКТ (23)
Кортис (7)
Ред Софт (Red Soft) (5)
ОТР-БИТ (ОТР - безопасность информационных технологий) (2)
ФГАУ НИИ Восход (1)
Другие (8)
Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров
Microsoft (80, 144)
Ред Софт (Red Soft) (3, 67)
РусБИТех-Астра (ГК Астра) (3, 45)
НППКТ (2, 41)
ИВК (3, 27)
Другие (305, 133)
НППКТ (1, 17)
РусБИТех-Астра (ГК Астра) (2, 9)
Ред Софт (Red Soft) (1, 8)
Almi Partner, Алми партнер (ГК Алми) (1, 7)
Microsoft (2, 6)
Другие (11, 19)
НППКТ (1, 23)
Ред Софт (Red Soft) (1, 13)
ИВК (2, 4)
Базальт СПО (BaseALT) ранее ALT Linux (3, 3)
РусБИТех-Астра (ГК Астра) (2, 3)
Другие (0, 0)
Ред Софт (Red Soft) (1, 6)
Базальт СПО (BaseALT) ранее ALT Linux (1, 2)
ИВК (1, 2)
Microsoft (1, 1)
Атлант (ГК Applite) (1, 1)
Другие (0, 0)
Ред Софт (Red Soft) (1, 10)
Jolla (Sailfish Holding) (1, 1)
Открытая мобильная платформа (ОМП) (1, 1)
Synology (SLMP PTE) (1, 1)
Другие (0, 0)
Распределение систем по количеству проектов, не включая партнерские решения
Ред ОС (Red OS) - 62
Microsoft Windows - 60
НППКТ: ОСнова (Операционная система общего назначения, ОС ОН) - 41
Astra Linux Common Edition - 27
Astra Linux Special Edition - 21
Другие 197
НППКТ: ОСнова (Операционная система общего назначения, ОС ОН) - 17
Ред ОС (Red OS) - 8
Astra Linux Common Edition - 7
AlterOS - 7
Microsoft Windows - 5
Другие 18
НППКТ: ОСнова (Операционная система общего назначения, ОС ОН) - 23
Ред ОС (Red OS) - 13
Альт Рабочая станция - 2
Astra Linux Common Edition - 2
ОС Альт (ранее Альт Линукс (ALT Linux) - 2
Другие 2
Ред ОС (Red OS) - 6
ОС Альт (ранее Альт Линукс (ALT Linux) - 2
Атлант ОС - 1
Windows Server 2019 - 1
Другие 0