Адрес: ул. Б. Очаковская 32 Москва Россия
Наши официальные канал и чат в telegram
Поднимем Devuan на вершину Distrowatch! Просто перейдите по ссылке один раз в день.

Доступна операционная система реального времени RT-Thread 5.3

Новости собранные из разных RSS источников
Аватара пользователя
root:#
Site Admin
Сообщения: 2333
Зарегистрирован: Вт ноя 08, 2022 3:27 pm
Благодарил (а): 60 раз
Поблагодарили: 28 раз

Доступна операционная система реального времени RT-Thread 5.3

Сообщение root:# »

Доступна операционная система реального времени RT-Thread 5.3
Опубликован выпуск RT-Thread 5.3, операционной системы реального времени (RTOS) для устройств интернета-вещей. Система развивается с 2006 года сообществом китайских разработчиков и в настоящее время портирована для 155 плат, чипов и микроконтроллеров на базе архитектур x86, ARM, MIPS, С-SKY, Xtensa, ARC и RISC-V. Минималистичная сборка RT-Thread (Nano) требует для работы всего 3 КБ Flash и 1.2 КБ ОЗУ. Для IoT-устройств, сильно не ограниченных в ресурсах, предлагается полнофункциональная версия, поддерживающая управление пакетами, конфигураторы, сетевой стек, пакеты с реализацией графического интерфейса, системы голосового управления, СУБД, сетевых сервисов и движков для выполнения скриптов. Код написан на языке Си и распространяется под лицензией Apache 2.0.
Операционную систему образуют три базовых слоя:
  • Ядро, обеспечивающее выполнение задач в режиме реального времени. Ядро предоставляет универсальные базовые примитивы, охватывающие такие области, как управление блокировками и синхронизацией данных, планирование задач, управление потоками, обработка сигналов, очереди сообщений, управление таймером, управление памятью. Специфичные для аппаратного обеспечения особенности реализованы на уровне libcpu и BSP, которые включают необходимые драйверы и код для поддержки CPU.
  • Компоненты и сервисы, работающие поверх ядра и предлагающие такие абстракции как виртуальная файловая система, система обработки исключений, хранилище в формате ключ/значение, интерфейс командной строки FinSH, сетевой стек (LwIP) и сетевые фреймворки, библиотеки для поддержки устройств, звуковая подсистема, беспроводной стек, компоненты для поддержки Wi-Fi, LoRa, Bluetooth, 2G/4G. Модульная архитектура позволяет подключать компоненты и сервисы в зависимости от своих задач и имеющихся аппаратных ресурсов.
  • Пакеты программ. Программные компоненты общего назначения и библиотеки функций распространяются и устанавливаются в форме пакетов. В настоящее время репозиторий включает более 450 пакетов, предлагающих от графических интерфейсов, мультимедийных приложений и сетевых приложений до систем управления роботами и обработчиков на базе машинного обучения. В пакетах также поставляются движки для организации выполнения программ на языках Lua, JerryScript, MicroPython, PikaScript и Rust (rtt_rust).

Изображение


Особенности платформы:
  • Поддержка архитектур: ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (поддерживаются микроконтроллеры таких производителей, как ST, Winner Micro, MindMotion, Realtek, Infineon, GigaDevic, Nordic, Nuvoton, NXP).
  • ARM Cortex-R4.
  • ARM Cortex-A8/A9 (NXP).
  • ARM7 (Samsung).
  • ARM9 (Allwinner, Xilinx, GOKE).
  • ARM11 (Fullhan).
  • MIPS32 (Loongson, Ingenic).
  • RISC-V RV32E/RV32I[F]/RV64[D] (sifive, Canaan Kendryt, bouffalo_lab, Nuclei, T-Head, HPMicro).
  • ARC (SYNOPSYS)
  • DSP (TI).
  • C-Sky.
  • x86.
[*] Расширяемая модульная архитектура, позволяющая сформировать окружение, подходящее для систем с ограниченными ресурсами (минимальные требования - 3 КБ Flash и 1.2 КБ ОЗУ). [*] Поддержка различных стандартных интерфейсов для разработки программ, таких как POSIX, CMSIS, C++ API. Отдельно развивается прослойка RTduino для совместимости с API и библиотеками проекта Arduino. [*] Возможность расширения через систему пакетов и подключаемых компонентов. [*] Поддержка разработки приложения для высокопроизводительной обработки информации. [*] Гибкая система управления питанием, позволяющая автоматически переводить устройство в режим сна и динамически управлять напряжением и частотой в зависимости от нагрузки. [*] Поддержка аппаратных средств для шифрования и расшифровки, предоставление библиотек с различными криптографическими алгоритмами. [*] Унифицированный интерфейс для доступа к периферийным устройствам и дополнительному оборудованию. [*] Виртуальная ФС и наличие драйверов для таких ФС, как FAT, UFFS, NFSv3, ROMFS и RAMFS. [*] Стек протоколов для TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M и т.п. [*] Система удалённой доставки и установки обновлений, поддерживающая шифрование и верификацию по цифровой подписи, возобновление прерванной установки, восстановление после сбоя, откат изменений и т.п. [*] Система динамически загружаемых модулей ядра, позволяющая отдельно собирать и разрабатывать компоненты ядра, и динамически загружать их при появлении необходимости. [*] Поддержка различных сторонних пакетов, например, Yaffs2, SQLite, FreeModbus, Canopen и т.п. [*] Возможность прямой компиляции BSP-пакета (Board Support Package) с компонентами для поддержки определённой аппаратной платформы, и его загрузки на плату. [*] Наличие эмулятора (BSP qemu-vexpress-a9), позволяющего разрабатывать приложения без использования реальных плат. [*] Поддержка типовых компиляторов и инструментов для разработки, таких как GCC, MDK Keil и IAR. [*] Развитие собственной интегрированной среды разработки RT-Thread Studio IDE, позволяющей создавать и отлаживать приложения, загружать их на платы, управлять настройками. Плагины для разработки программ для RT-Thread также доступны для Eclipse и VS Code. Наличие консольного интерфейса Env, упрощающего создание проектов и настройку окружения.

Среди изменений в новом выпуске:
  • Расширена поддержка разработки компонентов на языке Rust. Добавлены Rust-обвязки для потоков, мьютексов, семафоров, очередей сообщений, а также операций с памятью, временем и файлами. Реализованы компоненты для интеграции с SCons и Cargo. Обеспечено автоматическое определение целевых платформ ARM, AArch64 и RISC-V. Добавлены процедурные макросы для инициализации и регистрации команд. Для микроконтроллеров Cortex-M включена поддержка стандарта Open Firmware c описанием периферии через Device Tree. Добавлена поддержка VirtIO 1.2 с возможностью использования очередей пакетов, транспортов MMIO/PCI и синхронизации DMA. Добавлены VirtIO-драйверы 9P, crypto, RNG, SCMI и SCSI. Обновлены VirtIO-драйверы для сети, блочных устройств, консоли, устройств ввода и GPU. Добавлен фреймворк DVFS (Dynamic Voltage and Frequency Scaling) для динамического управления частотой CPU и устройств. Обеспечена интеграция с прошивкой ARM SCMI для управления энергопотреблением. Улучшено управление кулерами. Добавлена поддержка TEE-окружений (Trusted Execution Environment) и механизма обмена сообщениями RPMSG (Remote Processor Messaging). Реализована поддержка Unix-сокетов. Добавлена поддержка механизмов защиты беспроводных сетей WPA3, EA (Enterprise Authentication), WAPI, OWE и DPP. Добавлена поддержка протокола синхронизации времени PTP (Precision Time Protocol). Добавлен фреймворк Clock Time для работы со временем, поддерживающий высокоточные таймеры и синхронизацию времени по нескольким источникам. Новый фреймворк пришёл на смену ранее используемым компонентам ktime, cputime и hwtimer, Реализована файловая система 9PFS, применяемая для обмен файлами между хост-окружением и виртуальными машинами. В реализации легковесных процессов lwP (Lightweight Process) появилась поддержка архитектуры ARM и добавлена поддержка механизма vDSO (virtual dynamic shared object), позволяющего перенести обработчики из ядра в пространство пользователя и избежать переключений контекста. В ядре реализована поддержка 8- и 16-разрядных атомарных операций. Добавлена поддержка симметричной мультипроцессорности (SMP) для RISC-V процессоров серии XuanTie C/R и эмулятора QEMU virt64. Обновлён USB-стек CherryUSB 1.6.1. Добавлены новые DM-драйверы (Device Manager) для UFS, AHCI, NVMe, Ethernet, Intel HDA, джойстиков и сенсорных экранов.


Источник: https://www.opennet.ru/opennews/art.shtml?num=66255