Доступна операционная система реального времени 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.

Das Betriebssystem besteht aus drei grundlegenden Schichten:

  • Der Kernel, der die Ausführung von Aufgaben in Echtzeit ermöglicht. Der Kernel bietet universelle grundlegende Primitiven, die Bereiche wie Lock-Management und Datensynchronisation, Task-Planung, Thread-Management, Signalverarbeitung, Nachrichtenwarteschlangen, Timer-Verwaltung und Speicherverwaltung abdecken. Hardwarespezifische Merkmale werden auf der Ebene libcpu und BSP realisiert, die die erforderlichen Treiber und Codes zur Unterstützung der CPU enthalten.
  • Komponenten und Dienste, die über dem Kernel arbeiten und Abstraktionen wie ein virtuelles Dateisystem, ein Ausnahmeverarbeitungssystem, einen Schlüssel/Wert-Speicher, eine Kommandozeilenoberfläche FinSH, einen Netzwerkstack (LwIP) und Netzwerk-Frameworks, Bibliotheken zur Unterstützung von Geräten, ein Audiosubsystem, einen Wireless-Stack sowie Komponenten zur Unterstützung von Wi-Fi, LoRa, Bluetooth, 2G/4G anbieten. Die modulare Architektur ermöglicht das Anschließen von Komponenten und Diensten basierend auf den eigenen Anforderungen und vorhandenen Hardware-Ressourcen.
  • Programmpakete. Software-Komponenten allgemeiner Art und Funktionsbibliotheken werden in Form von Paketen verteilt und installiert. Derzeit umfasst das Repository mehr als 450 Pakete, die von grafischen Benutzeroberflächen, Multimedia-Anwendungen und Netzwerkanwendungen bis hin zu Robotersteuerungssystemen und Machine-Learning-Handlern reichen. In den Paketen sind auch Engines zur Ausführung von Programmen in den Sprachen Lua, JerryScript, MicroPython, PikaScript und Rust (rtt_rust) enthalten.

Plattformmerkmale:

  • Unterstützung der Architekturen:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (unterstützte Mikrocontroller von Herstellern wie 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.
  • Erweiterbare modulare Architektur, die es ermöglicht, eine Umgebung zu schaffen, die für Systeme mit begrenzten Ressourcen geeignet ist (Mindestanforderungen - 3 KB Flash und 1,2 KB RAM).
  • Unterstützung verschiedener Standartschnittstellen zur Softwareentwicklung, wie POSIX, CMSIS, C++ API. Eine separate Schicht namens RTduino wird entwickelt, um die Kompatibilität mit APIs und Bibliotheken des Arduino-Projekts zu gewährleisten.
  • Erweiterungsmöglichkeiten über ein Paket- und Plugin-System.
  • Unterstützung der Anwendungsentwicklung für die Hochleistungsverarbeitung von Informationen.
  • Ein flexibles Energiemanagementsystem, das es dem Gerät ermöglicht, automatisch in den Schlafmodus zu wechseln und die Spannung sowie die Frequenz je nach Last dynamisch zu steuern.
  • Unterstützung für Hardwarelösungen zur Verschlüsselung und Entschlüsselung, Bereitstellung von Bibliotheken mit verschiedenen kryptografischen Algorithmen.
  • Ein einheitliches Interface für den Zugriff auf Peripheriegeräte und zusätzliches Equipment.
  • Virtuelles FS und die Verfügbarkeit von Treibern für Dateisysteme wie FAT, UFFS, NFSv3, ROMFS und RAMFS.
  • Protokoll-Stack für TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M usw.
  • Ein System zur Fernlieferung und Installation von Updates, das Verschlüsselung und digitale Signaturverifizierung unterstützt, die Wiederaufnahme unterbrochener Installationen, Wiederherstellung nach einem Fehler, Rollback von Änderungen usw.
  • Ein System dynamisch ladbarer Kernelmodule, das die separate Zusammenstellung und Entwicklung von Kernelkomponenten ermöglicht und diese bei Bedarf dynamisch lädt.
  • Unterstützung verschiedener Drittanbieter-Pakete, wie Yaffs2, SQLite, FreeModbus, Canopen usw.
  • Möglichkeit zur direkten Kompilierung von BSP-Paketen (Board Support Package) mit Komponenten zur Unterstützung einer bestimmten Hardwareplattform und deren Laden auf das Board.
  • Vorhandensein eines Emulators (BSP qemu-vexpress-a9), der die Entwicklung von Anwendungen ohne die Verwendung echter Boards ermöglicht.
  • Unterstützung gängiger Compiler und Entwicklungswerkzeuge, wie GCC, MDK Keil und IAR.
  • Entwicklung einer eigenen integrierten Entwicklungsumgebung RT-Thread Studio IDE, die das Erstellen und Debuggen von Anwendungen, das Laden auf Boards und die Verwaltung von Einstellungen ermöglicht. Plugins zur Entwicklung von Programmen für RT-Thread sind auch für Eclipse und VS Code verfügbar.
  • Vorhandensein einer Konsolenoberfläche Env, die das Erstellen von Projekten und die Konfiguration der Umgebung vereinfacht.

Zu den Änderungen in der neuen Version gehören:

  • Расширена поддержка разработки компонентов на языке 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, джойстиков и сенсорных экранов.

Quelle: opennet.ru

Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server 🔥 Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster