RT-Thread 5.0 operativni sustav u stvarnom vremenu dostupan

Objavljeno je izdanje RT-Thread 5.0, operativnog sustava u stvarnom vremenu (RTOS) za uređaje Internet of Things. Sustav je od 2006. razvijala zajednica kineskih programera i trenutno je prenesen na gotovo 200 ploča, čipova i mikrokontrolera temeljenih na arhitekturama x86, ARM, MIPS, C-SKY, Xtensa, ARC i RISC-V. Minimalistički RT-Thread (Nano) build zahtijeva samo 3 KB Flasha i 1.2 KB RAM-a za rad. Za IoT uređaje koji nisu jako ograničeni u resursima nudi se verzija s punim značajkama koja podržava upravljanje paketima, konfiguratore, mrežni stog, pakete s implementacijom grafičkog sučelja, sustave glasovne kontrole, DBMS, mrežne usluge i motore za izvršavanje skripte. Kod je napisan u C-u i distribuira se pod licencom Apache 2.0.

Značajke platforme:

  • Podrška za arhitekturu:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (podržani su mikrokontroleri proizvođača kao što su 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 (SINOPSIS)
    • DSP (TI).
    • C-Nebo.
    • x86.
  • Proširiva modularna arhitektura koja vam omogućuje stvaranje okruženja prikladnog za sustave s ograničenim resursima (minimalni zahtjevi - 3 KB Flash i 1.2 KB RAM).
  • Podrška za različita standardna sučelja za razvoj programa, kao što su POSIX, CMSIS, C++ API. RTduino sloj razvija se zasebno radi kompatibilnosti s API-jem i bibliotekama Arduino projekta.
  • Mogućnost proširenja kroz sustav paketa i plug-in komponenti.
  • Podrška za razvoj aplikacija za obradu informacija visokih performansi.
  • Fleksibilan sustav upravljanja napajanjem koji vam omogućuje automatsko stavljanje uređaja u stanje mirovanja i dinamičku kontrolu napona i frekvencije ovisno o opterećenju.
  • Hardverska podrška za šifriranje i dešifriranje, opskrba biblioteka s različitim kriptografskim algoritmima.
  • Jedinstveno sučelje za pristup perifernim uređajima i dodatnoj opremi.
  • Virtualni datotečni sustav i dostupnost upravljačkih programa za datotečne sustave kao što su FAT, UFFS, NFSv3, ROMFS i RAMFS.
  • Stog protokola za TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M itd.
  • Sustav za daljinsku isporuku i instalaciju ažuriranja koji podržava enkripciju i provjeru digitalnim potpisom, nastavak prekinute instalacije, oporavak od kvara, vraćanje promjena itd.
  • Sustav dinamički učitavanih modula kernela koji vam omogućuje da odvojeno gradite i razvijate komponente kernela i da ih dinamički učitavate kada je potrebno.
  • Podržava razne pakete trećih strana, kao što su Yaffs2, SQLite, FreeModbus, Canopen itd.
  • Mogućnost izravnog kompajliranja BSP paketa (Board Support Package) s komponentama za podršku određene hardverske platforme i učitavanja na ploču.
  • Dostupnost emulatora (BSP qemu-vexpress-a9), koji vam omogućuje razvoj aplikacija bez korištenja pravih ploča.
  • Podrška za uobičajene prevoditelje i razvojne alate kao što su GCC, MDK Keil i IAR.
  • Razvoj našeg vlastitog integriranog razvojnog okruženja RT-Thread Studio IDE, koji vam omogućuje stvaranje i debugiranje aplikacija, njihovo učitavanje na ploče i upravljanje postavkama. Razvojni dodaci za RT-Thread također su dostupni za Eclipse i VS Code.
    RT-Thread 5.0 operativni sustav u stvarnom vremenu dostupan
  • Prisutnost sučelja Env konzole, koja pojednostavljuje stvaranje projekata i postavljanje okruženja.
    RT-Thread 5.0 operativni sustav u stvarnom vremenu dostupan

Operativni sustav se sastoji od tri osnovna sloja:

  • Kernel koji omogućuje izvršavanje zadataka u stvarnom vremenu. Kernel pruža generičke osnovne primitive koje pokrivaju područja kao što su upravljanje zaključavanjem i sinkronizacija podataka, raspoređivanje zadataka, upravljanje nitima, rukovanje signalima, čekanje poruka, upravljanje timerom i upravljanje memorijom. Značajke specifične za hardver implementirane su na razinama libcpu i BSP, što uključuje potrebne upravljačke programe i kod za podršku CPU-u.
  • Komponente i usluge koje se izvode na vrhu kernela i nude apstrakcije kao što su virtualni datotečni sustav, sustav za rukovanje iznimkama, pohrana ključeva/vrijednosti, sučelje FinSH naredbenog retka, mrežni skup (LwIP) i mrežni okviri, biblioteke za podršku uređaja, audio podsustav, bežični skup, komponente za podršku Wi-Fi, LoRa, Bluetooth, 2G/4G. Modularna arhitektura omogućuje vam povezivanje komponenti i usluga ovisno o vašim zadacima i raspoloživim hardverskim resursima.
  • Programski paketi. Softverske komponente opće namjene i knjižnice funkcija distribuiraju se i instaliraju u obliku paketa. Repozitorij trenutno uključuje više od 450 paketa, nudeći sve od grafičkih sučelja, multimedijskih aplikacija i mrežnih aplikacija do sustava upravljanja robotima i procesora temeljenih na strojnom učenju. Paketi također pružaju motore za organiziranje izvršavanja programa na jezicima Lua, JerryScript, MicroPython, PikaScript i Rust (rtt_rust).

RT-Thread 5.0 operativni sustav u stvarnom vremenu dostupan

Među novim značajkama dodanim u verziji 5.0, možemo primijetiti značajno poboljšanje podrške za višejezgrene i višenitne sustave (na primjer, mrežni stog i datotečni sustavi prilagođeni su za rad u višenitnom načinu rada, planer je podijeljen u opcije za single-core sustave i SMP). Dodana implementacija TLS-a (Thread Local Storage). Poboljšana podrška za Cortex-A čipove. Značajno poboljšana podrška za 64-bitne sustave (TCP/IP stog i sustavi datoteka provjereni su za 64-bitne sustave). Integrirane su komponente za upravljanje flash memorijom. Redizajniran je alat za izradu upravljačkih programa.

Izvor: opennet.ru

Dodajte komentar