Sistem de operare în timp real RT-Thread 5.0 disponibil

Опубликован выпуск RT-Thread 5.0, операционной системы реального времени (RTOS) для устройств интернета-вещей. Система развивается с 2006 года сообществом китайских разработчиков и в настоящее время портирована для почти 200 плат, чипов и микроконтроллеров на базе архитектур x86, ARM, MIPS, С-SKY, Xtensa, ARC и RISC-V. Минималистичная сборка RT-Thread (Nano) требует для работы всего 3 КБ Flash и 1.2 КБ ОЗУ. Для IoT-устройств, сильно не ограниченных в ресурсах, предлагается полнофункциональная версия, поддерживающая управление пакетами, конфигураторы, сетевой стек, пакеты с реализацией графического интерфейса, системы голосового управления, СУБД, сетевых сервисов и движков для выполнения скриптов. Код написан на языке Си и распространяется под лицензией Apache 2.0.

Caracteristicile platformei:

  • Suport arhitectural:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (sunt acceptate microcontrolere de la producători precum 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).
    • ARC (SINOPSIE)
    • DSP (TI).
    • C-Sky.
    • X86.
  • Arhitectură modulară extensibilă care vă permite să creați un mediu potrivit pentru sisteme cu resurse limitate (cerințe minime - 3 KB Flash și 1.2 KB RAM).
  • Suport pentru diverse interfețe standard pentru dezvoltarea programelor, cum ar fi POSIX, CMSIS, C++ API. Stratul RTduino este dezvoltat separat pentru compatibilitate cu API-ul și bibliotecile proiectului Arduino.
  • Posibilitate de extindere printr-un sistem de pachete și componente plug-in.
  • Suport pentru dezvoltarea de aplicații pentru procesarea de înaltă performanță a informațiilor.
  • Sistem flexibil de gestionare a energiei care vă permite să puneți automat dispozitivul în modul de repaus și să controlați dinamic tensiunea și frecvența în funcție de sarcină.
  • Suport hardware pentru criptare și decriptare, furnizarea de biblioteci cu diverși algoritmi criptografici.
  • Interfață unificată pentru acces la dispozitive periferice și echipamente suplimentare.
  • Sistem de fișiere virtual și disponibilitatea driverelor pentru sisteme de fișiere precum FAT, UFFS, NFSv3, ROMFS și RAMFS.
  • Stivă de protocol pentru TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M etc.
  • Un sistem pentru livrarea și instalarea de la distanță a actualizărilor care acceptă criptarea și verificarea folosind o semnătură digitală, reluarea unei instalări întrerupte, recuperarea după o eroare, anularea modificărilor etc.
  • Un sistem de module de nucleu încărcate dinamic, care vă permite să construiți și să dezvoltați separat componente ale nucleului și să le încărcați dinamic atunci când este necesar.
  • Suportă diverse pachete terțe, cum ar fi Yaffs2, SQLite, FreeModbus, Canopen etc.
  • Abilitatea de a compila direct un pachet BSP (Board Support Package) cu componente pentru a susține o anumită platformă hardware și de a-l încărca pe placă.
  • Disponibilitatea unui emulator (BSP qemu-vexpress-a9), care vă permite să dezvoltați aplicații fără a utiliza plăci reale.
  • Suport pentru compilatoare comune și instrumente de dezvoltare, cum ar fi GCC, MDK Keil și IAR.
  • Dezvoltarea propriului mediu de dezvoltare integrat RT-Thread Studio IDE, care vă permite să creați și să depanați aplicații, să le încărcați pe plăci și să gestionați setările. Pluginurile de dezvoltare pentru RT-Thread sunt disponibile și pentru Eclipse și VS Code.
    Sistem de operare în timp real RT-Thread 5.0 disponibil
  • Prezența interfeței consolei Env, care simplifică crearea de proiecte și configurarea mediului.
    Sistem de operare în timp real RT-Thread 5.0 disponibil

Sistemul de operare este format din trei straturi de bază:

  • Un nucleu care permite executarea sarcinilor în timp real. Nucleul oferă primitive de bază generice care acoperă domenii precum managementul blocării și sincronizarea datelor, programarea sarcinilor, gestionarea firelor de execuție, gestionarea semnalelor, așteptarea mesajelor, managementul temporizatorului și gestionarea memoriei. Caracteristicile specifice hardware-ului sunt implementate la nivelurile libcpu și BSP, care includ driverele și codul necesar pentru a susține procesorul.
  • Componente și servicii care rulează pe partea superioară a nucleului și oferă abstracții, cum ar fi un sistem de fișiere virtual, un sistem de gestionare a excepțiilor, stocare cheie/valoare, interfață de linie de comandă FinSH, stivă de rețea (LwIP) și cadre de rețea, biblioteci de suport pentru dispozitive, subsistem audio, stivă fără fir, componente pentru a suporta Wi-Fi, LoRa, Bluetooth, 2G/4G. Arhitectura modulară vă permite să conectați componente și servicii în funcție de sarcinile dvs. și de resursele hardware disponibile.
  • Pachete software. Componentele software de uz general și bibliotecile de funcții sunt distribuite și instalate sub formă de pachete. Depozitul include în prezent peste 450 de pachete, oferind totul, de la interfețe grafice, aplicații multimedia și aplicații de rețea până la sisteme de control al roboților și procesoare bazate pe învățarea automată. Pachetele oferă și motoare pentru organizarea execuției programelor în limbajele Lua, JerryScript, MicroPython, PikaScript și Rust (rtt_rust).

Sistem de operare în timp real RT-Thread 5.0 disponibil

Из новых возможностей, добавленных в версии 5.0 можно отметить значительное улучшение поддержки многоядерных и многопоточных систем (например, для работы в многопоточном режиме адаптированы сетевой стек и файловые системы, планировщик разделён на варианты для одноядерных систем и SMP). Добавлена реализация TLS (Thread Local Storage). Улучшена поддержка чипов Cortex-A. Значительно улучшена поддержка 64-разрядных систем (стек TCP/IP и файловые системы верифицированы для 64-разрядных систем). Интегрированы компоненты управления Flash-памятью. Переработан инструментарий для создания драйверов.

Sursa: opennet.ru

Adauga un comentariu