RT-Thread 5.3 realtidsoperativsystem tillgÀngligt

RT-Thread 5.3, ett realtidsoperativsystem (RTOS) för Internet of Things-enheter, har slÀppts. Systemet har utvecklats sedan 2006 av en grupp kinesiska utvecklare och har nu portats till 155 kort, chip och mikrokontroller baserade pÄ x86-, ARM-, MIPS-, C-SKY-, Xtensa-, ARC- och RISC-V-arkitekturer. En minimalistisk version av RT-Thread (Nano) krÀver endast 3 KB Flash och 1.2 KB RAM. För IoT-enheter med obegrÀnsade resursbegrÀnsningar finns en fullfjÀdrad version tillgÀnglig, som stöder pakethantering, konfiguratorer, en nÀtverksstack, GUI-paket, röststyrningssystem, ett DBMS, nÀtverkstjÀnster och skriptmotorer. Koden Àr skriven i C och distribueras under Apache 2.0-licensen.

Operativsystemet bestÄr av tre grundlÀggande lager:

  • En kĂ€rna som gör att uppgifter kan utföras i realtid. KĂ€rnan tillhandahĂ„ller generiska kĂ€rnprimitiver som tĂ€cker omrĂ„den som lĂ„shantering och datasynkronisering, uppgiftsschemalĂ€ggning, trĂ„dhantering, signalhantering, meddelandekö, timerhantering och minneshantering. HĂ„rdvaruspecifika funktioner implementeras pĂ„ libcpu- och BSP-nivĂ„erna, som inkluderar nödvĂ€ndiga drivrutiner och kod för att stödja processorn.
  • Komponenter och tjĂ€nster som körs ovanpĂ„ kĂ€rnan och erbjuder abstraktioner sĂ„som ett virtuellt filsystem, undantagshanteringssystem, nyckel/vĂ€rdelagring, FinSH kommandoradsgrĂ€nssnitt, nĂ€tverksstack (LwIP) och nĂ€tverksramverk, bibliotek för enhetsstöd, ljudundersystem, trĂ„dlös stack, komponenter för att stödja Wi-Fi, LoRa, Bluetooth, 2G/4G. ModulĂ€r arkitektur lĂ„ter dig ansluta komponenter och tjĂ€nster beroende pĂ„ dina uppgifter och tillgĂ€ngliga hĂ„rdvaruresurser.
  • Programvarupaket. Programvarukomponenter och funktionsbibliotek för allmĂ€nna Ă€ndamĂ„l distribueras och installeras i form av paket. Förvaret innehĂ„ller för nĂ€rvarande mer Ă€n 450 paket, som erbjuder allt frĂ„n grafiska grĂ€nssnitt, multimediaapplikationer och nĂ€tverksapplikationer till robotstyrsystem och maskininlĂ€rningsbaserade processorer. Paketen tillhandahĂ„ller Ă€ven motorer för att organisera exekveringen av program pĂ„ sprĂ„ken Lua, JerryScript, MicroPython, PikaScript och Rust (rtt_rust).

Plattformsfunktioner:

  • Arkitekturstöd:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (mikrokontroller frĂ„n tillverkare som ST, Winner Micro, MindMotion, Realtek, Infineon, GigaDevic, Nordic, Nuvoton, NXP stöds).
    • 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.
  • Utökningsbar modulĂ€r arkitektur som lĂ„ter dig skapa en miljö som lĂ€mpar sig för system med begrĂ€nsade resurser (minimikrav - 3 KB Flash och 1.2 KB RAM).
  • Stöd för olika standardgrĂ€nssnitt för programutveckling, sĂ„som POSIX, CMSIS, C++ API. RTduino-lagret utvecklas separat för kompatibilitet med Arduino-projektets API och bibliotek.
  • Möjlighet till expansion genom ett system av paket och plug-in komponenter.
  • Stöd för applikationsutveckling för högpresterande informationsbehandling.
  • Flexibelt strömhanteringssystem som lĂ„ter dig automatiskt försĂ€tta enheten i vilolĂ€ge och dynamiskt styra spĂ€nning och frekvens beroende pĂ„ belastningen.
  • HĂ„rdvarustöd för kryptering och dekryptering, tillhandahĂ„llande av bibliotek med olika kryptografiska algoritmer.
  • Enhetligt grĂ€nssnitt för Ă„tkomst till kringutrustning och ytterligare utrustning.
  • Virtuella filsystem och tillgĂ€nglighet av drivrutiner för 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, etc.
  • Ett system för fjĂ€rrleverans och installation av uppdateringar som stöder kryptering och verifiering med hjĂ€lp av en digital signatur, Ă„teruppta en avbruten installation, Ă„terstĂ€lla efter ett fel, Ă„terstĂ€lla Ă€ndringar, etc.
  • Ett system med dynamiskt laddade kĂ€rnmoduler som lĂ„ter dig bygga och utveckla kĂ€rnkomponenter separat, och dynamiskt ladda dem nĂ€r det behövs.
  • Stöder olika tredjepartspaket, sĂ„som Yaffs2, SQLite, FreeModbus, Canopen, etc.
  • Möjligheten att direkt kompilera ett BSP-paket (Board Support Package) med komponenter för att stödja en specifik hĂ„rdvaruplattform och ladda det pĂ„ kortet.
  • TillgĂ€ngligheten av en emulator (BSP qemu-vexpress-a9), som lĂ„ter dig utveckla applikationer utan att anvĂ€nda riktiga kort.
  • Stöd för vanliga kompilatorer och utvecklingsverktyg som GCC, MDK Keil och IAR.
  • Utveckling av vĂ„r egen integrerade utvecklingsmiljö RT-Thread Studio IDE, som lĂ„ter dig skapa och felsöka applikationer, ladda dem pĂ„ kort och hantera instĂ€llningar. Utvecklingsplugins för RT-Thread Ă€r ocksĂ„ tillgĂ€ngliga för Eclipse och VS Code.
  • TillgĂ€nglighet för Env-konsolens grĂ€nssnitt, vilket förenklar skapandet av projekt och stĂ€ller in miljön.

Bland Àndringarna i den nya utgÄvan:

  • Stöd för att utveckla komponenter i Rust-sprĂ„ket har utökats. Rustbindningar har lagts till för trĂ„dar, mutexer, semaforer, meddelandeköer, samt operationer med minne, tid och filer. Komponenter för integration med SCons och Cargo har implementerats. Automatisk detektering av ARM-, AArch64- och RISC-V-mĂ„lplattformar Ă€r nu tillgĂ€nglig. Procedurmakron för initialisering och kommandoregistrering har lagts till.
  • För Cortex-M-mikrokontroller Ă€r stöd för Open Firmware-standarden med beskrivning av kringutrustning via Device Tree aktiverat.
  • Lade till stöd för VirtIO 1.2 med möjligheten att anvĂ€nda paketköer, MMIO/PCI-transporter och DMA-synkronisering. VirtIO-drivrutiner för 9P, krypto, RNG, SCMI och SCSI har lagts till. VirtIO-drivrutiner för nĂ€tverk, blockenheter, konsol, inmatningsenheter och GPU har uppdaterats.
  • Ramverket DVFS (Dynamic Voltage and Frequency Scaling) har lagts till för dynamisk hantering av CPU och enhetsfrekvens. Integration med ARM SCMI-firmware för energihantering har tillhandahĂ„llits. FlĂ€kthanteringen har förbĂ€ttrats.
  • Lade till stöd för TEE-miljöer (Trusted Execution Environment) och meddelandemekanismen RPMSG (Remote Processor Messaging).
  • Stöd för Unix-sockets har implementerats.
  • Lade till stöd för sĂ€kerhetsmekanismer för trĂ„dlösa nĂ€tverk WPA3, EA (Enterprise Authentication), WAPI, OWE och DPP.
  • Lade till stöd för tidssynkroniseringsprotokollet PTP (Precision Time Protocol).
  • Ramverket Clock Time har lagts till för att arbeta med tid, med stöd för högprecisionstimers och tidssynkronisering över flera kĂ€llor. Det nya ramverket ersĂ€tter de tidigare anvĂ€nda komponenterna ktime, cputime och hwtimer.
  • Filsystemet 9PFS har implementerats och anvĂ€nds för att utbyta filer mellan vĂ€rdmiljön och virtuella maskiner.
  • Implementeringen av lĂ€tta processer (lwP) stöder nu ARM-arkitekturen och lĂ€gger till stöd för vDSO-mekanismen (virtuellt dynamiskt delat objekt), vilket gör att hanterare kan flyttas frĂ„n kĂ€rnan till anvĂ€ndarutrymmet och undvika kontextvĂ€xlar.
  • KĂ€rnan implementerar stöd för 8- och 16-bitars atomĂ€ra operationer.
  • Lade till stöd för symmetrisk multiprocessing (SMP) för XuanTie C/R-seriens RISC-V-processorer och QEMU virt64-emulatorn.
  • CherryUSB USB-stacken uppdaterad till 1.6.1.
  • Lade till nya DM-drivrutiner (Enhetshanteraren) för UFS, AHCI, NVMe, Ethernet, Intel HDA, joysticks och pekskĂ€rmar.

KĂ€lla: opennet.ru

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