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

Il sistema operativo è composto da tre strati di base:

  • Il kernel, che garantisce l'esecuzione di compiti in tempo reale. Il kernel fornisce primitive di base universali che coprono aree come gestione dei blocchi e sincronizzazione dei dati, pianificazione dei compiti, gestione dei thread, gestione dei segnali, code di messaggi, gestione dei timer, gestione della memoria. Le caratteristiche specifiche per l'hardware sono implementate a livello di libcpu e BSP, che includono i driver necessari e il codice per il supporto della CPU.
  • Componenti e servizi che operano sopra il kernel e offrono astrazioni come il file system virtuale, il sistema di gestione delle eccezioni, lo storage in formato chiave/valore, l'interfaccia della riga di comando FinSH, lo stack di rete (LwIP) e framework di rete, librerie per supportare dispositivi, sottosistema audio, stack wireless, componenti per supportare Wi-Fi, LoRa, Bluetooth, 2G/4G. L'architettura modulare consente di collegare componenti e servizi in base alle proprie esigenze e alle risorse hardware disponibili.
  • Pacchetti software. I componenti software di uso generale e le librerie di funzioni vengono distribuiti e installati in forma di pacchetti. Attualmente, il repository include oltre 450 pacchetti che offrono interfacce grafiche, applicazioni multimediali e applicazioni di rete, fino a sistemi di gestione dei robot e gestori basati su apprendimento automatico. I pacchetti forniscono anche motori per l'esecuzione di programmi in linguaggi come Lua, JerryScript, MicroPython, PikaScript e Rust (rtt_rust).

Caratteristiche della piattaforma:

  • Supporto per le architetture:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (supportati microcontrollori di produttori come ST, Winner Micro, MindMotion, Realtek, Infineon, GigaDevice, 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.
  • Architettura modulare espandibile, che consente di creare un ambiente adatto a sistemi con risorse limitate (requisiti minimi: 3 KB di Flash e 1.2 KB di RAM).
  • Supporto di vari standard di interfaccia per lo sviluppo di software, come POSIX, CMSIS, API C++. Si sviluppa separatamente un layer RTduino per la compatibilità con le API e le librerie del progetto Arduino.
  • Possibilità di estensione tramite un sistema di pacchetti e componenti plug-in.
  • Supporto per lo sviluppo di applicazioni per il processamento ad alte prestazioni.
  • Sistema di gestione dell'alimentazione flessibile che consente di mettere automaticamente il dispositivo in modalità di sospensione e di gestire dinamicamente tensione e frequenza in base al carico.
  • Supporto per hardware per la crittografia e decrittografia, con la fornitura di librerie con vari algoritmi crittografici.
  • Interfaccia unificata per l'accesso ai dispositivi periferici e attrezzature aggiuntive.
  • FS virtuale e disponibilità di driver per filesystem come FAT, UFFS, NFSv3, ROMFS e RAMFS.
  • Stack di protocolli per TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M, ecc.
  • Sistema di distribuzione e installazione remota degli aggiornamenti, che supporta la crittografia e la verifica tramite firma digitale, il ripristino dell'installazione interrotta, il recupero da guasti, l'annullamento delle modifiche, ecc.
  • Sistema di moduli del kernel caricabili dinamicamente, che consente di assemblare e sviluppare componenti del kernel separatamente, e di caricarli dinamicamente all'occorrenza.
  • Supporto per vari pacchetti di terze parti, come Yaffs2, SQLite, FreeModbus, Canopen, ecc.
  • Possibilità di compilazione diretta del pacchetto BSP (Board Support Package) con componenti per il supporto di una specifica piattaforma hardware, e il suo caricamento sulla scheda.
  • Presenza di un emulatore (BSP qemu-vexpress-a9) che consente di sviluppare applicazioni senza utilizzare schede reali.
  • Supporto per compilatori e strumenti di sviluppo standard, come GCC, MDK Keil e IAR.
  • Sviluppo di un ambiente di sviluppo integrato RT-Thread Studio IDE, che consente di creare e debugare applicazioni, caricandole sulle schede e gestendo le impostazioni. I plugin per lo sviluppo di software per RT-Thread sono disponibili anche per Eclipse e VS Code.
  • Presenza di un'interfaccia della console Env, che semplifica la creazione di progetti e la configurazione dell'ambiente.

Tra le novità del nuovo rilascio:

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

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS - ProHoster