Na voljo je operacijski sistem realnega časa RT-Thread 5.3

Objavljen je izdelek RT-Thread 5.3, operacijskega sistema realnega časa (RTOS) za naprave interneta stvari. Sistem se razvija od leta 2006 z skupnostjo kitajskih razvijalcev in je trenutno portiran za 155 platform, čipov in mikrokontrolerjev, ki temeljijo na arhitekturah x86, ARM, MIPS, C-SKY, Xtensa, ARC in RISC-V. Minimalistična različica RT-Thread (Nano) zahteva za delovanje le 3 KB Flash in 1.2 KB RAM. Za IoT naprave, ki niso močno omejene z viri, je na voljo polno funkcionalna različica, ki podpira upravljanje paketov, konfiguratorje, omrežni sklad, pakete z implementacijo grafičnega vmesnika, sisteme za glasovno upravljanje, podatkovne baze, omrežne storitve in motorje za izvajanje skript. Koda je napisana v jeziku C in se distribuiraja pod licenco Apache 2.0.

Operacijski sistem sestavljajo tri osnovne plasti:

  • Jedro, ki zagotavlja izvajanje nalog v realnem času. Jedro nudi splošne osnovne Primitive, ki pokrivajo taka področja, kot so upravljanje z zaklepanji in sinhronizacijo podatkov, načrtovanje nalog, upravljanje s številnimi tokovi, obdelava signalov, sporočilne vrste, upravljanje s časovniki, upravljanje s spominom. Specifične značilnosti za strojno opremo so реализираны на уровне libcpu и BSP, которые включают необходимые драйверы и код для поддержки CPU.
  • Komponente in storitve, ki delujejo nad jedrom in ponujajo takšne abstrakcije, kot so virtualni datotečni sistem, sistem obdelave izjem, skladišče v formatu ključ/vrednost, ukazni vmesnik FinSH, omrežni sklad (LwIP) in omrežni okvirji, knjižnice za podporo napravam, zvočni podsistem, brezžični sklad, komponente za podporo Wi-Fi, LoRa, Bluetooth, 2G/4G. Modularna arhitektura omogoča priključitev komponent in storitev glede na naloge in razpoložljive strojne vire.
  • Programske enote. Programske komponente splošne rabe in knjižnice funkcij se distribuirajo in nameščajo v obliki paketov. Trenutno repozitorij vključuje več kot 450 paketov, ki ponujajo range od grafičnih vmesnikov, multimedijskih aplikacij in spletnih aplikacij do sistemov za upravljanje robotov ter obdelovalcev na osnovi strojnega učenja. V paketih so vključeni tudi jeziki za izvedbo programov v Lua, JerryScript, MicroPython, PikaScript in Rust (rtt_rust).

Lastnosti platforme:

  • Podpora arhitektur:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (podprti so mikrokontrolerji proizvajalcev, kot so 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.
  • Razširljiva modularna arhitektura, ki omogoča oblikovanje okolja, primernega za sisteme z omejenimi viri (minimalne zahteve — 3 KB Flash in 1.2 KB RAM).
  • Podpora različnim standardnim vmesnikom za razvoj programov, kot so POSIX, CMSIS, C++ API. Posebej se razvija vmesnik RTduino za združljivost z API-ji in knjižnicami projekta Arduino.
  • Možnost razširitve preko sistema paketov in priklopnih komponent.
  • Podpora razvoju aplikacij za visoko zmogljivo obdelavo informacij.
  • Prilagodljiv sistem upravljanja z energijo, ki omogoča samodejno preklapljanje naprave v stanje spanja ter dinamično upravljanje napetosti in frekvence glede na obremenitev.
  • Podpora strojni opremi za šifriranje in dešifriranje ter zagotavljanje knjižnic z različnimi kriptografskimi algoritmi.
  • Unificiran vmesnik za dostop do perifernih naprav in dodatne opreme.
  • Virtualni FS in prisotnost gonilnikov za datotečne sisteme, kot so FAT, UFFS, NFSv3, ROMFS in RAMFS.
  • Protokolni sklad za TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M itd.
  • Sistem oddaljenega prenosa in namestitve posodobitev, ki podpira šifriranje in verifikacijo z digitalnim podpisom, obnavljanje prekinjene namestitve, obnovo po napaki, povratne spremembe itd.
  • Sistem dinamično naloženih modulov jedra, ki omogoča ločeno zbiranje in razvoj jedrnih komponent ter njihovo dinamično naložitev, ko je to potrebno.
  • Podpora različnim zunanjim paketom, kot so Yaffs2, SQLite, FreeModbus, Canopen itd.
  • Možnost neposredne kompilacije BSP-paketa (Board Support Package) s komponentami za podporo določeni strojni platformi in njegove naložitve na ploščo.
  • Na voljo je emulator (BSP qemu-vexpress-a9), ki omogoča razvoj aplikacij brez uporabe dejanskih plošč.
  • Podpora standardnim kompilatorjem in orodjem za razvoj, kot so GCC, MDK Keil in IAR.
  • Razvoj lastnega integriranega okolja za razvoj RT-Thread Studio IDE, ki omogoča ustvarjanje in odpravljanje napak v aplikacijah, njihovo nalaganje na plošče, upravljanje nastavitev. Vtičniki za razvoj programov za RT-Thread so prav tako na voljo za Eclipse in VS Code.
  • Na voljo je konzolni vmesnik Env, ki poenostavi ustvarjanje projektov in nastavitev okolja.

Med spremembami v novi izdaji:

  • Razširjena podpora za razvoj komponent v jeziku Rust. Dodane so Rust-oplate za tokove, mutex-e, semaforje, vrstice sporočil ter operacije z memorijo, časom in datotekami. Implementirane so komponente za integracijo s SCons in Cargo. Zagotovljeno samodejno določanje ciljenih platform ARM, AArch64 in RISC-V. Dodani so proceduralni makroji za inicializacijo in registracijo ukazov.
  • Za mikrokontrolerje Cortex-M je vključena podpora standarda Open Firmware z opisom periferije preko Device Tree.
  • Dodana podpora VirtIO 1.2 z možnostjo uporabe vrstic paketov, transportov MMIO/PCI in sinhronizacije DMA. Dodani so VirtIO-pogoni 9P, crypto, RNG, SCMI in SCSI. Posodobljeni so VirtIO-pogoni za omrežje, blokne naprave, konzolo, vhodne naprave in GPU.
  • Dodana je platforma DVFS (Dinamično prilagajanje napetosti in frekvence) za dinamično upravljanje frekvence CPU in naprave. Zagotovljena je integracija z ARM SCMI programsko opremo za upravljanje porabo energije. Izboljšano je upravljanje s hladilniki.
  • Dodana podpora TEE-okolij (Trusted Execution Environment) in mehanizma za izmenjavo sporočil RPMSG (Remote Processor Messaging).
  • Implementirana je podpora za Unix-sokete.
  • Dodana podpora mehanizmov zaščite brezžičnih omrežij WPA3, EA (Enterprise Authentication), WAPI, OWE in DPP.
  • Dodana podpora protokolu sinhronizacije časa PTP (Precision Time Protocol).
  • Dodana je Clock Time okvir za rad s vremenom, koji podržava visoko precizne tajmere i vremensku synchronizaciju iz više izvora. Novi okvir zamijenjuje ranije korištene komponente ktime, cputime i hwtimer.
  • Implementiran je datotečni sustav 9PFS, koji se koristi za razmjenu datoteka između host okruženja i virtualnih mašina.
  • U implementaciji laganih procesa lwP (Lightweight Process) dodana je podrška za ARM arhitekturu i mehanizam vDSO (virtual dynamic shared object), koji omogućava premještanje handlera iz jezgre u korisnički prostor i izbjegavanje promjena konteksta.
  • U jezgri je implementirana podrška za 8- i 16-bitne atomske operacije.
  • Dodana je podrška za simetrično višestruko procesiranje (SMP) za RISC-V procesore serije XuanTie C/R i emulator QEMU virt64.
  • Ažuriran je USB stog CherryUSB 1.6.1.
  • Dodani su novi DM drajveri (Device Manager) za UFS, AHCI, NVMe, Ethernet, Intel HDA, džojstike i zaslone osjetljive na dodir.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster