Operativsystemet för realtid RT-Thread 5.1 har publicerats

Efter ett Ärs utveckling Àr version 5.1 av RT-Thread, operativsystemet i realtid (RTOS) för Internet of Things-enheter, nu tillgÀnglig. Systemet har utvecklats av ett kinesiskt utvecklargemenskap sedan 2006 och Àr för nÀrvarande portat för 154 plattformar, chip och mikrokontroller baserade pÄ x86, ARM, MIPS, C-SKY, Xtensa, ARC och RISC-V arkitekturer. Den minimalistiska versionen av RT-Thread (Nano) krÀver endast 3 KB Flash och 1,2 KB RAM för att fungera. För IoT-enheter som inte Àr kraftigt begrÀnsade i resurser erbjuds en fullfjÀdrad version som stödjer paketadministration, konfigurerare, nÀtverksstack, paket med grafiska anvÀndargrÀnssnitt, röststyrning, databashanterare, nÀtverkstjÀnster och motorer för skriptkörning. Koden Àr skriven i C och distribueras under Apache 2.0-licens.

Operativsystemet bestÄr av tre grundlÀggande lager:

  • KĂ€rnan, som sĂ€kerstĂ€ller att uppgifter körs i realtid. KĂ€rnan tillhandahĂ„ller universella grundlĂ€ggande primitiva funktioner som omfattar omrĂ„den som lĂ„sning och datasykronisering, uppgiftsplanering, trĂ„dhantering, signalhantering, meddelandeköer, timerhantering och minneshantering. Specifika hĂ„rdvarufunktioner implementeras pĂ„ nivĂ„n libcpu och BSP, som inkluderar nödvĂ€ndiga drivrutiner och kod för att stödja CPU.
  • Komponenterna och tjĂ€nsterna som arbetar ovanpĂ„ kĂ€rnan erbjuder sĂ„dana abstraktioner som en virtuell filsystem, undantagshanteringssystem, nyckel/vĂ€rde-lagring, kommandoradsgrĂ€nssnittet FinSH, nĂ€tverksstacken (LwIP) och nĂ€tverksramverk, bibliotek för enhetsstöd, ljudsystem, trĂ„dlös stack, komponenter för Wi-Fi, LoRa, Bluetooth och 2G/4G. Den modulĂ€ra arkitekturen möjliggör anslutning av komponenter och tjĂ€nster beroende pĂ„ sina uppgifter och tillgĂ€ngliga hĂ„rdvaruresurser.
  • Programpaket. AllmĂ€nna programkomponenter och funktionsbibliotek distribueras och installeras i form av paket. För nĂ€rvarande innehĂ„ller lagret över 450 paket som erbjuder allt frĂ„n grafiska grĂ€nssnitt, multimedia-applikationer och nĂ€tverksapplikationer till robotstyrningssystem och maskininlĂ€rningsbaserade hanterare. I paketen ingĂ„r Ă€ven motorer för att köra program pĂ„ sprĂ„ken Lua, JerryScript, MicroPython, PikaScript och Rust (rtt_rust).

Operativsystemet för realtid RT-Thread 5.1 har publicerats

Plattformens funktioner:

  • Stöd för arkitekturer:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (stöd för mikrokontroller frĂ„n tillverkare som ST, Winner Micro, MindMotion, Realtek, Infineon, GigaDevice, 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.
  • ModulĂ€r arkitektur som kan anpassas för system med begrĂ€nsade resurser (minimi krav – 3 KB Flash och 1,2 KB RAM).
  • Stöd för olika standardgrĂ€nssnitt för programutveckling, som POSIX, CMSIS, C++ API. En separat lager RTduino utvecklas för kompatibilitet med API och bibliotek frĂ„n Arduino-projektet.
  • Möjlighet till utbyggnad via ett paket- och modulbaserat system.
  • Stöd för utveckling av applikationer för högpresterande informationsbearbetning.
  • Flexibelt strömsystem som automatiskt kan sĂ€tta enheten i vilolĂ€ge och dynamiskt styra spĂ€nning och frekvens beroende pĂ„ belastning.
  • Stöd för hĂ„rdvaror för kryptering och dekryptering, tillhandahĂ„llande av bibliotek med olika kryptografiska algoritmer.
  • Enhetligt grĂ€nssnitt för Ă„tkomst till perifera enheter och ytterligare utrustning.
  • Virtuellt filsystem och tillgĂ„ng till drivrutiner för sĂ„dana filsystem som FAT, UFFS, NFSv3, ROMFS och RAMFS.
  • Protokollstack för TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M, osv.
  • System för fjĂ€rrleverans och installation av uppdateringar, som stödjer kryptering och verifiering med digital signatur, Ă„terupptagning av avbruten installation, Ă„terstĂ€llning efter krasch, tillbaka-rullning av Ă€ndringar osv.
  • Ett system för dynamiskt laddningsbara kĂ€rnmoduler, som gör det möjligt att separat samla och utveckla kĂ€rnkomponenter och dynamiskt ladda dem vid behov.
  • Stöd för olika tredjepartspaket, till exempel Yaffs2, SQLite, FreeModbus, Canopen etc.
  • Möjlighet att direkt kompilera ett BSP-paket (Board Support Package) med komponenter för stöd av en specifik hĂ„rdvaruplattform och ladda det pĂ„ kortet.
  • NĂ€rvaron av en emulator (BSP qemu-vexpress-a9) som gör det möjligt att utveckla applikationer utan att anvĂ€nda fysiska kort.
  • Stöd för standardkompilatorer och utvecklingsverktyg som GCC, MDK Keil och IAR.
  • Utveckling av den egna integrerade utvecklingsmiljön RT-Thread Studio IDE, som gör det möjligt att skapa och felsöka applikationer, ladda dem pĂ„ kort, och hantera instĂ€llningar. Plugins för att utveckla program för RT-Thread finns ocksĂ„ tillgĂ€ngliga för Eclipse och VS Code.
  • NĂ€rvaron av ett kommandoradsgrĂ€nssnitt Env, som förenklar skapandet av projekt och instĂ€llning av miljön.

Bland förÀndringarna i den nya versionen:

  • I RT-Smart, det hybrida operativsystemet baserat pĂ„ RT-Thread som separerar applikationer frĂ„n kĂ€rnan, ingĂ„r standardmĂ€ssigt stöd för mekanismer som epoll, eventfd, signalfd, timerfd och select. En terminalemulatorsubsystem har implementerats. Stöd för DFZU2EG MPSoC och cv181x-riscv-enheter har lagts till.
  • I RTduino, lagret för att sĂ€kerstĂ€lla kompatibilitet med Arduino-ekosystemet, har stöd lagts till för korten raspberry-pico, stm32h503-st-nucleo, stm32h563-st-nucleo, stm32f412-nucleo och stm32f407-rt-spark.
  • Tredjeparts komponenter som ssh, sftp, weston och vim har uppdaterats.
  • Stöd har lagts till för nya kort och chip, sĂ„som HPMicro RISC-V, STM32 Nucleo, Adafruit Metro M4, Seeed Wio-Terminal, ST (stm32L431_tencentos, stm32h7s7-disco, stm32f407-lckfb-skystar, stm32h503-st-nucleo), Renesas (ek-ra8m1, ek-ra8d1, ra8d1-vision-board), AT32 (at32f402-start, at32f405-start), HT32 (ht32f52352, ht32f12366, AVR32 at32uc3a0256, at32uc3b0256), CVITEK (c906_little, cv18xx_risc-v), WCH (yd-ch32v307vct6), HC32 (ev_hc32f4a0_lqfp176, ev_hc32f460_lqfp100_v2), (ev_hc32f448_lqfp80, GD32 gd32407v-lckfb), NXP (frdm-mcxn947, frdm-mcxa153).
  • Prestandan hos schemalĂ€ggare och CPU har optimerats. En lager för att abstraktionen av schemalĂ€ggaren rt_sched har lagts till.
  • Prestandan pĂ„ flerkĂ€rniga system har optimerats.
  • Möjligheten att koppla handlare till minnesallokeringsoperationer malloc har tillhandahĂ„llits.
  • För ARM64 och RV64-arkitekturer har stöd för kĂ€rnans omvĂ€nd spĂ„rning (backtrace) implementerats.
  • ÖvergĂ„ngen till en ny enhetsdrivrutinsmodell har fortsatt.
  • I virtio-drivrutinerna qemu-virt64-aarch64 och qemu-virt64-riscv har stöd för SDL2 lagts till.
  • Ett ramverk för utveckling av clk-drivrutiner har lagts till.
  • I DFS har konfigurationen exfat lagts till. KĂ€rnan har som standard omstĂ€llts att anvĂ€nda filsystemet dfsv2.
  • Stödet för TTY-terminaler har förbĂ€ttrats.
  • Stöd för flaggorna O_DIRECT och O_SYNC har lagts till i in-/utmatningssystemet.
  • I implementeringen av lĂ€tta processer lwP (Lightweight Process) har funktionen wp_new bytts ut mot lwp_create. En ny funktion sys_setitimer har lagts till.
  • I minneshanteraren MM har stöd för minnesreservering lagts till och funktionen rt_aspace_mremap_range har implementerats.
  • Stöd för ARM Cortex-M85 och Cortex-R52-processorer har lagts till i Libcpu.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster