Sistemi operativ RT-Thread 5.0 disponohet në kohë reale

RT-Thread 5.0, një sistem operativ në kohë reale (RTOS) për pajisjet e Internetit të Gjërave, është lëshuar. Sistemi është zhvilluar që nga viti 2006 nga një komunitet zhvilluesish kinezë dhe aktualisht është transferuar në pothuajse 200 borde, çipa dhe mikrokontrollues bazuar në arkitekturat x86, ARM, MIPS, C-SKY, Xtensa, ARC dhe RISC-V. Ndërtimi minimalist RT-Thread (Nano) kërkon vetëm 3 KB Flash dhe 1.2 KB RAM për të funksionuar. Për pajisjet IoT që nuk janë shumë të kufizuara në burime, ofrohet një version me funksione të plota që mbështet menaxhimin e paketave, konfiguruesit, një pirg rrjeti, paketat me zbatimin e një ndërfaqe grafike, sistemet e kontrollit zanor, DBMS, shërbimet e rrjetit dhe motorët për ekzekutim. skriptet. Kodi është shkruar në C dhe shpërndahet nën licencën Apache 2.0.

Karakteristikat e platformës:

  • Mbështetje arkitekturore:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (mikrokontrolluesit nga prodhues të tillë si ST, Winner Micro, MindMotion, Realtek, Infineon, GigaDevic, Nordic, Nuvoton, NXP janë të mbështetur).
    • 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 Kenndryt, bouffalo_lab, Nuclei, T-Head).
    • ARC (SYNOPSYS)
    • DSP (TI).
    • C-Sky.
    • x86.
  • Arkitekturë modulare e zgjeruar që ju lejon të krijoni një mjedis 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 programit, si POSIX, CMSIS, C++ API. Shtresa RTduino po zhvillohet veçmas për pajtueshmëri me API-në dhe bibliotekat e projektit Arduino.
  • Mundësia e zgjerimit përmes një sistemi paketash dhe komponentësh plug-in.
  • Mbështetje për zhvillimin e aplikacioneve për përpunimin e informacionit me performancë të lartë.
  • Sistemi fleksibël i menaxhimit të energjisë që ju lejon të vendosni automatikisht pajisjen në modalitetin e fjetjes dhe të kontrolloni në mënyrë dinamike tensionin dhe frekuencën në varësi të ngarkesës.
  • Mbështetje harduerike për enkriptim dhe deshifrim, sigurim i bibliotekave me algoritme të ndryshme kriptografike.
  • Ndërfaqe e unifikuar për qasje në pajisjet periferike dhe pajisjet shtesë.
  • Sistemi virtual i skedarëve dhe disponueshmëria e drejtuesve për sistemet e skedarëve si FAT, UFFS, NFSv3, ROMFS dhe RAMFS.
  • Stack protokolli për TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M, etj.
  • Një sistem për dërgimin në distancë dhe instalimin e përditësimeve që mbështet enkriptimin dhe verifikimin duke përdorur një nënshkrim dixhital, rifillimin e një instalimi të ndërprerë, rikuperimin nga një dështim, rikthimin e ndryshimeve, etj.
  • Një sistem i moduleve të kernelit të ngarkuar në mënyrë dinamike që ju lejon të ndërtoni dhe zhvilloni veçmas komponentët e kernelit dhe t'i ngarkoni ato në mënyrë dinamike kur është e nevojshme.
  • Mbështet paketa të ndryshme të palëve të treta, si Yaffs2, SQLite, FreeModbus, Canopen, etj.
  • Aftësia për të përpiluar drejtpërdrejt një paketë BSP (Paketa e Mbështetjes së Bordit) me komponentë për të mbështetur një platformë specifike harduerike dhe për ta ngarkuar atë në tabelë.
  • Disponueshmëria e një emulatori (BSP qemu-vexpress-a9), i cili ju lejon të zhvilloni aplikacione pa përdorur borde reale.
  • Mbështetje për përpiluesit e zakonshëm dhe mjetet e zhvillimit si GCC, MDK Keil dhe IAR.
  • Zhvillimi i mjedisit tonë të integruar të zhvillimit RT-Thread Studio IDE, i cili ju lejon të krijoni dhe korrigjoni aplikacionet, t'i ngarkoni ato në borde dhe të menaxhoni cilësimet. Shtojcat e zhvillimit për RT-Thread janë gjithashtu të disponueshme për Eclipse dhe VS Code.
    Sistemi operativ RT-Thread 5.0 disponohet në kohë reale
  • Prania e ndërfaqes së tastierës Env, e cila thjeshton krijimin e projekteve dhe konfigurimin e mjedisit.
    Sistemi operativ RT-Thread 5.0 disponohet në kohë reale

Sistemi operativ përbëhet nga tre shtresa bazë:

  • Një kernel që lejon që detyrat të ekzekutohen në kohë reale. Kerneli ofron primitivë të përgjithshëm thelbësorë që mbulojnë fusha të tilla si menaxhimi i bllokimit dhe sinkronizimi i të dhënave, planifikimi i detyrave, menaxhimi i temave, trajtimi i sinjalit, radha e mesazheve, menaxhimi i kohëmatësit dhe menaxhimi i kujtesës. Karakteristikat specifike të harduerit zbatohen në nivelet libcpu dhe BSP, të cilat përfshijnë drejtuesit dhe kodin e nevojshëm për të mbështetur CPU-në.
  • Komponentët dhe shërbimet që funksionojnë në krye të kernelit dhe ofrojnë abstraksione të tilla si një sistem skedari virtual, sistemi i trajtimit të përjashtimeve, ruajtja e çelësave/vlerave, ndërfaqja e linjës së komandës FinSH, grupi i rrjeteve (LwIP) dhe kornizat e rrjetit, bibliotekat mbështetëse të pajisjes, nënsistemi audio, rafte wireless, komponentë për të mbështetur Wi-Fi, LoRa, Bluetooth, 2G/4G. Arkitektura modulare ju lejon të lidhni komponentë dhe shërbime në varësi të detyrave tuaja dhe burimeve të disponueshme të harduerit.
  • Paketat softuerike. Komponentët e programeve kompjuterike për qëllime të përgjithshme dhe bibliotekat e funksioneve shpërndahen dhe instalohen në formën e paketave. Depoja aktualisht përfshin më shumë se 450 paketa, duke ofruar gjithçka nga ndërfaqet grafike, aplikacionet multimediale dhe aplikacionet e rrjeteve deri te sistemet e kontrollit të robotëve dhe procesorët e bazuar në mësimin e makinerive. Paketat gjithashtu ofrojnë motorë për organizimin e ekzekutimit të programeve në gjuhët Lua, JerryScript, MicroPython, PikaScript dhe Rust (rtt_rust).

Sistemi operativ RT-Thread 5.0 disponohet në kohë reale

Ndër veçoritë e reja të shtuara në versionin 5.0, mund të vërejmë një përmirësim të rëndësishëm në mbështetjen për sistemet me shumë bërthama dhe me shumë fije (për shembull, sistemet e rrjetit dhe skedarët janë përshtatur për të punuar në modalitetin me shumë fije, planifikuesi është i ndarë në opsionet për sistemet me një bërthamë dhe SMP). U shtua zbatimi i TLS (Thread Local Storage). Mbështetje e përmirësuar për çipat Cortex-A. Mbështetje e përmirësuar ndjeshëm për sistemet 64-bitësh (stack TCP/IP dhe sistemet e skedarëve janë verifikuar për sistemet 64-bit). Komponentët e menaxhimit të memories flash janë të integruara. Paketa e veglave për krijimin e drejtuesve është ridizajnuar.

Burimi: opennet.ru

Shto një koment