K dispozici operační systém reálného času RT-Thread 5.0

Bylo zveřejněno vydání RT-Thread 5.0, operačního systému v reálném čase (RTOS) pro zařízení internetu věcí. Systém je vyvíjen od roku 2006 komunitou čínských vývojářů a v současné době je portován na téměř 200 desek, čipů a mikrokontrolérů založených na architekturách x86, ARM, MIPS, C-SKY, Xtensa, ARC a RISC-V. Minimalistické sestavení RT-Thread (Nano) vyžaduje k provozu pouze 3 KB Flash a 1.2 KB RAM. Pro IoT zařízení, která nemají příliš omezené zdroje, je nabízena plnohodnotná verze, která podporuje správu balíčků, konfigurátory, síťový zásobník, balíčky s implementací grafického rozhraní, systémy hlasového ovládání, DBMS, síťové služby a motory pro spouštění skripty. Kód je napsán v jazyce C a distribuován pod licencí Apache 2.0.

Vlastnosti platformy:

  • Podpora architektury:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (podporovány jsou mikrořadiče od výrobců jako 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 (SYNOPSYS)
    • DSP (TI).
    • C-Sky.
    • x86.
  • Rozšiřitelná modulární architektura, která umožňuje vytvořit prostředí vhodné pro systémy s omezenými prostředky (minimální požadavky - 3 KB Flash a 1.2 KB RAM).
  • Podpora různých standardních rozhraní pro vývoj programů, jako jsou POSIX, CMSIS, C++ API. Vrstva RTduino je vyvíjena samostatně pro kompatibilitu s API projektu Arduino a knihovnami.
  • Možnost rozšíření prostřednictvím systému balíčků a zásuvných komponent.
  • Podpora vývoje aplikací pro vysoce výkonné zpracování informací.
  • Flexibilní systém řízení spotřeby, který umožňuje automaticky uvést zařízení do režimu spánku a dynamicky řídit napětí a frekvenci v závislosti na zátěži.
  • Hardwarová podpora šifrování a dešifrování, poskytování knihoven různými kryptografickými algoritmy.
  • Jednotné rozhraní pro přístup k periferním zařízením a doplňkovému vybavení.
  • Virtuální souborový systém a dostupnost ovladačů pro souborové systémy jako FAT, UFFS, NFSv3, ROMFS a RAMFS.
  • Zásobník protokolů pro TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M atd.
  • Systém pro vzdálené doručování a instalaci aktualizací, který podporuje šifrování a ověřování pomocí digitálního podpisu, obnovení přerušené instalace, zotavení po selhání, vrácení změn atd.
  • Systém dynamicky načítaných modulů jádra, který vám umožňuje samostatně sestavovat a vyvíjet součásti jádra a v případě potřeby je dynamicky načítat.
  • Podporuje různé balíčky třetích stran, jako je Yaffs2, SQLite, FreeModbus, Canopen atd.
  • Schopnost přímo zkompilovat balíček BSP (Board Support Package) s komponentami pro podporu konkrétní hardwarové platformy a nahrát jej na desku.
  • Dostupnost emulátoru (BSP qemu-vexpress-a9), který umožňuje vyvíjet aplikace bez použití skutečných desek.
  • Podpora běžných kompilátorů a vývojových nástrojů jako GCC, MDK Keil a IAR.
  • Vývoj našeho vlastního integrovaného vývojového prostředí RT-Thread Studio IDE, které umožňuje vytvářet a ladit aplikace, načítat je na desky a spravovat nastavení. Vývojové pluginy pro RT-Thread jsou k dispozici také pro Eclipse a VS Code.
    K dispozici operační systém reálného času RT-Thread 5.0
  • Přítomnost konzolového rozhraní Env, které zjednodušuje tvorbu projektů a nastavování prostředí.
    K dispozici operační systém reálného času RT-Thread 5.0

Operační systém se skládá ze tří základních vrstev:

  • Jádro, které umožňuje provádění úkolů v reálném čase. Jádro poskytuje obecná základní primitiva pokrývající oblasti, jako je správa zámků a synchronizace dat, plánování úloh, správa vláken, zpracování signálů, řazení zpráv do fronty, správa časovačů a správa paměti. Funkce specifické pro hardware jsou implementovány na úrovních libcpu a BSP, které zahrnují nezbytné ovladače a kód pro podporu CPU.
  • Komponenty a služby, které běží nad jádrem a nabízejí abstrakce, jako je virtuální souborový systém, systém zpracování výjimek, úložiště klíč/hodnota, rozhraní příkazového řádku FinSH, síťový zásobník (LwIP) a síťové rámce, knihovny pro podporu zařízení, zvukový subsystém, bezdrátový stack, komponenty pro podporu Wi-Fi, LoRa, Bluetooth, 2G/4G. Modulární architektura vám umožňuje propojovat komponenty a služby v závislosti na vašich úkolech a dostupných hardwarových prostředcích.
  • Softwarové balíčky. Všeobecné softwarové komponenty a knihovny funkcí jsou distribuovány a instalovány ve formě balíčků. Úložiště v současnosti obsahuje více než 450 balíčků, které nabízejí vše od grafických rozhraní, multimediálních aplikací a síťových aplikací až po řídicí systémy robotů a procesory založené na strojovém učení. Balíčky také poskytují nástroje pro organizaci spouštění programů v jazycích Lua, JerryScript, MicroPython, PikaScript a Rust (rtt_rust).

K dispozici operační systém reálného času RT-Thread 5.0

Mezi novinkami přidanými ve verzi 5.0 můžeme zaznamenat výrazné zlepšení v podpoře vícejádrových a vícevláknových systémů (například síťový zásobník a souborové systémy jsou přizpůsobeny pro práci ve vícevláknovém režimu, plánovač je rozdělen do možností pro jednojádrové systémy a SMP). Přidána implementace TLS (Thread Local Storage). Vylepšená podpora pro čipy Cortex-A. Výrazně vylepšená podpora pro 64bitové systémy (zásobník TCP/IP a souborové systémy jsou ověřeny pro 64bitové systémy). Komponenty pro správu flash paměti jsou integrovány. Sada nástrojů pro vytváření ovladačů byla přepracována.

Zdroj: opennet.ru

Přidat komentář