ĂshtĂ« publikuar versioni RT-Thread 5.3, njĂ« sistem operativ nĂ« kohĂ« reale (RTOS) pĂ«r pajisjet e Internetit tĂ« GjĂ«rave. Sistemi zhvillohet qĂ« nga viti 2006 nga komuniteti i zhvilluesve kinezĂ« dhe aktualisht Ă«shtĂ« portuar pĂ«r 155 pllaka, çipa dhe mikrokontrollues tĂ« bazuar nĂ« arkitekturat x86, ARM, MIPS, C-SKY, Xtensa, ARC dhe RISC-V. NdĂ«rtimi minimalist i RT-Thread (Nano) kĂ«rkon pĂ«r funksionim vetĂ«m 3 KB Flash dhe 1.2 KB RAM. PĂ«r pajisjet IoT qĂ« nuk janĂ« shumĂ« tĂ« kufizuara nĂ« burime, ofrohet njĂ« version i plotĂ« funksional qĂ« mbĂ«shtet menaxhimin e paketave, konfiguruesit, stack-un e rrjetit, paketat me zbatim tĂ« ndĂ«rfaqes grafike, sistemet e komandimit me zĂ«, DBMS, shĂ«rbimet e rrjetit dhe motorĂ«t pĂ«r ekzekutimin e skripteve. Kodi Ă«shtĂ« shkruar nĂ« gjuhĂ«n C dhe shpĂ«rndahet sipas licencĂ«s Apache 2.0.
Sistemi operativ përbëhet nga tre shtresa bazë:
- Bërthama, e cila siguron ekzekutimin e detyrave në kohë reale. Bërthama ofron primitiva bazë universale që mbulojnë fusha si menaxhimi i bllokimeve dhe sinkronizimit të të dhënave, planifikimi i detyrave, menaxhimi i fijeve, përpunimi i sinjaleve, radhët e mesazheve, menaxhimi i timerëve dhe menaxhimi i memories. Veçoritë specifike të harduerit janë zbatuar në nivelin e libcpu dhe BSP, të cilat përfshijnë driverët e nevojshëm dhe kodin për mbështetjen e CPU.
- KomponentĂ«t dhe shĂ«rbimet qĂ« funksionojnĂ« mbi bĂ«rthamĂ«n dhe ofrojnĂ« abstraksione si sistemi virtual i skedarĂ«ve, sistemi i trajtimit tĂ« pĂ«rjashtimeve, ruajtja nĂ« formatin çelĂ«s/vlerĂ«, ndĂ«rfaqja e linjĂ«s sĂ« komandĂ«s FinSH, stack-u i rrjetit (LwIP) dhe framework-et e rrjetit, bibliotekat pĂ«r mbĂ«shtetjen e pajisjeve, nĂ«nsistemi audio, stack-u wireless, komponentĂ«t pĂ«r mbĂ«shtetjen e WiâFi, LoRa, Bluetooth, 2G/4G. Arkitektura modulare lejon lidhjen e komponentĂ«ve dhe shĂ«rbimeve sipas detyrave konkrete dhe burimeve harduerike nĂ« dispozicion.
- Paketat e softuerit. Komponentët softuerikë të përdorimit të përgjithshëm dhe bibliotekat e funksioneve shpërndahen dhe instalohen në formën e paketave. Aktualisht, depoja përfshin më shumë se 450 paketa, që ofrojnë gjithçka nga ndërfaqe grafike, aplikacione multimediale dhe aplikacione rrjeti deri te sistemet e menaxhimit të robotëve dhe përpunuesit e bazuar në machine learning. Paketat përfshijnë gjithashtu motorë për ekzekutimin e programeve në gjuhët Lua, JerryScript, MicroPython, PikaScript dhe Rust (rtt_rust).

Veçoritë e platformës:
- Mbështetje për arkitekturat:
- ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (mbështeten mikrokontrollues nga prodhues si 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.
- ArkitekturĂ« modulare e zgjerueshme, qĂ« lejon krijimin e njĂ« mjedisi tĂ« pĂ«rshtatshĂ«m pĂ«r sisteme me burime tĂ« kufizuara (kĂ«rkesat minimale â 3 KB Flash dhe 1.2 KB RAM).
- Mbështetje për ndërfaqe të ndryshme standarde për zhvillimin e softuerit, si POSIX, CMSIS, C++ API. Veçmas zhvillohet shtresa RTduino për përputhshmëri me API dhe bibliotekat e projektit Arduino.
- Mundësi zgjerimi përmes sistemit të paketave dhe komponentëve shtesë.
- Mbështetje për zhvillimin e aplikacioneve për përpunim të informacionit me performancë të lartë.
- Sistem fleksibël i menaxhimit të energjisë, që lejon kalimin automatik të pajisjes në modalitetin e fjetjes dhe menaxhimin dinamik të tensionit dhe frekuencës sipas ngarkesës.
- Mbështetje për mjete harduerike për enkriptim dhe dekriptim, si edhe ofrim bibliotekash me algoritme të ndryshme kriptografike.
- Ndërfaqe e unifikuar për qasje në pajisjet periferike dhe pajisjet shtesë.
- FS virtuale dhe prania e driverëve për sisteme skedarësh si FAT, UFFS, NFSv3, ROMFS dhe RAMFS.
- Stek protokollesh pĂ«r TCP/IP, Ethernet, WiâFi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M etj.
- Sistem për shpërndarjen dhe instalimin në distancë të përditësimeve, me mbështetje për enkriptim dhe verifikim me nënshkrim digjital, rifillim të instalimit të ndërprerë, rikuperim pas dështimit, kthim të ndryshimeve pas dhembjeve e të ngjashme.
- Sistem i moduleve të kernelit që ngarkohen dinamikisht, i cili mundëson ndërtimin dhe zhvillimin e veçuar të komponentëve të kernelit, si edhe ngarkimin e tyre dinamik kur nevojiten.
- Mbështetje për paketa të ndryshme të palëve të treta, si p.sh. Yaffs2, SQLite, FreeModbus, Canopen etj.
- Mundësi për kompilim të drejtpërdrejtë të paketës BSP (Board Support Package) me komponentë për mbështetjen e një platforme të caktuar harduerike dhe ngarkimin e saj në pllakë.
- Disponueshmëri e emulatorit (BSP qemu-vexpress-a9), që mundëson zhvillimin e aplikacioneve pa përdorur pllaka reale.
- Mbështetje për kompajlerë dhe mjete standarde zhvillimi, si GCC, MDK Keil dhe IAR.
- Zhvillim i mjedisit të vet të integruar për zhvillim RT-Thread Studio IDE, i cili mundëson krijimin dhe debugimin e aplikacioneve, ngarkimin e tyre në pllaka dhe menaxhimin e cilësimeve. Plugin-et për zhvillimin e programeve për RT-Thread janë gjithashtu të disponueshme për Eclipse dhe VS Code.
- Disponueshmëri e ndërfaqes së konsolës Env, e cila thjeshton krijimin e projekteve dhe konfigurimin e mjedisit.
Mes ndryshimeve në versionin e ri:
- ĂshtĂ« zgjeruar mbĂ«shtetja pĂ«r zhvillimin e komponentĂ«ve nĂ« gjuhĂ«n Rust. JanĂ« shtuar Rust bindings pĂ«r thread-et, mutex-et, semaforĂ«t, radhĂ«t e mesazheve, si edhe pĂ«r operacionet me memorien, kohĂ«n dhe skedarĂ«t. JanĂ« implementuar komponentĂ« pĂ«r integrim me SCons dhe Cargo. ĂshtĂ« siguruar zbulimi automatik i platformave tĂ« synuara ARM, AArch64 dhe RISC-V. JanĂ« shtuar makro procedurale pĂ«r inicializimin dhe regjistrimin e komandave.
- Për mikrokontrollerët Cortex-M është përfshirë mbështetja për standardin Open Firmware me përshkrimin e periferikëve përmes Device Tree.
- ĂshtĂ« shtuar mbĂ«shtetja pĂ«r VirtIO 1.2 me mundĂ«sinĂ« e pĂ«rdorimit tĂ« radhĂ«ve tĂ« paketave, transporteve MMIO/PCI dhe sinkronizimit DMA. JanĂ« shtuar driver-at VirtIO pĂ«r 9P, crypto, RNG, SCMI dhe SCSI. JanĂ« pĂ«rditĂ«suar driver-at VirtIO pĂ«r rrjetin, pajisjet bllok, konsolĂ«n, pajisjet hyrĂ«se dhe GPU.
- ĂshtĂ« shtuar framework-u DVFS (Dynamic Voltage and Frequency Scaling) pĂ«r menaxhimin dinamik tĂ« frekuencĂ«s sĂ« CPU dhe pajisjeve. ĂshtĂ« siguruar integrimi me firmware-in ARM SCMI pĂ«r menaxhimin e konsumit tĂ« energjisĂ«. ĂshtĂ« pĂ«rmirĂ«suar menaxhimi i ftohĂ«sve.
- ĂshtĂ« shtuar mbĂ«shtetja pĂ«r mjediset TEE (Trusted Execution Environment) dhe mekanizmin e shkĂ«mbimit tĂ« mesazheve RPMSG (Remote Processor Messaging).
- ĂshtĂ« implementuar mbĂ«shtetja pĂ«r Unix sockets.
- ĂshtĂ« shtuar mbĂ«shtetja pĂ«r mekanizmat e mbrojtjes sĂ« rrjeteve pa tela WPA3, EA (Enterprise Authentication), WAPI, OWE dhe DPP.
- ĂshtĂ« shtuar mbĂ«shtetja pĂ«r protokollin e sinkronizimit tĂ« kohĂ«s PTP (Precision Time Protocol).
- ĂshtĂ« shtuar framework-u Clock Time pĂ«r punĂ«n me kohĂ«n, me mbĂ«shtetje pĂ«r timerĂ« me saktĂ«si tĂ« lartĂ« dhe sinkronizim tĂ« kohĂ«s nga disa burime. Framework-u i ri zĂ«vendĂ«son komponentĂ«t e pĂ«rdorur mĂ« parĂ« ktime, cputime dhe hwtimer,
- ĂshtĂ« implementuar sistemi i skedarĂ«ve 9PFS, i pĂ«rdorur pĂ«r shkĂ«mbimin e skedarĂ«ve mes mjedisit host dhe makinave virtuale.
- Në implementimin e proceseve të lehta lwP (Lightweight Process) është shtuar mbështetja për arkitekturën ARM dhe është shtuar mbështetja për mekanizmin vDSO (virtual dynamic shared object), i cili mundëson zhvendosjen e handler-ëve nga kerneli në hapësirën e përdoruesit dhe shmang ndërrimet e kontekstit.
- Në kernel është implementuar mbështetja për operacione atomike 8-bitëshe dhe 16-bitëshe.
- ĂshtĂ« shtuar mbĂ«shtetja pĂ«r multiprocesim simetrik (SMP) pĂ«r procesorĂ«t RISC-V tĂ« serisĂ« XuanTie C/R dhe emulatorin QEMU virt64.
- ĂshtĂ« pĂ«rditĂ«suar stack-u USB CherryUSB 1.6.1.
- Janë shtuar driverë të rinj DM (Device Manager) për UFS, AHCI, NVMe, Ethernet, Intel HDA, joystick dhe ekrane me prekje.
Burimi: opennet.ru
