Доступна операционная система реального времени RT-Thread 5.3

Опубликован выпуск RT-Thread 5.3, операционной системы реального времени (RTOS) для устройств интернета-вещей. Система развивается с 2006 года сообществом китайских разработчиков и в настоящее время портирована для 155 плат, чипов и микроконтроллеров на базе архитектур x86, ARM, MIPS, С-SKY, Xtensa, ARC и RISC-V. Минималистичная сборка RT-Thread (Nano) требует для работы всего 3 КБ Flash и 1.2 КБ ОЗУ. Для IoT-устройств, сильно не ограниченных в ресурсах, предлагается полнофункциональная версия, поддерживающая управление пакетами, конфигураторы, сетевой стек, пакеты с реализацией графического интерфейса, системы голосового управления, СУБД, сетевых сервисов и движков для выполнения скриптов. Код написан на языке Си и распространяется под лицензией Apache 2.0.

Operatsioonisüsteem koosneb kolmest põhikihtidest:

  • Tuumik, mis tagab ülesannete täitmise reaalaegses režiimis. Tuumik peab silmas universaalseid põhielemente, mis katab valdkondi nagu lukustamise juhtimine ja andmete sünkroonimine, ülesannete planeerimine, niidihaldus, signaalide töötlemine, sõnumijärjekorrad, ajastajate juhtimine, mälu juhtimine. Riistvara-spetsiifilisi omadusi on rakendatud libcpu ja BSP tasemel, mis sisaldab vajalikke draivereid ja koodi CPU toe jaoks.
  • Komponendid ja teenused, mis töötavad tuumiku kohal ja pakuvad selliseid abstraktsioone nagu virtuaalne failisüsteem, erandite töötlemise süsteem, võtme-väärtuse formaadis hoidmine, käsurea liides FinSH, võrgu stek (LwIP) ja võrgu raamistikud, seadmete toetamiseks mõeldud raamatukogud, heliallikasüsteem, traadita stek, komponentide toekomplekt Wi-Fi, LoRa, Bluetooth, 2G/4G toeks. Moodulaarne arhitektuur võimaldab komponente ja teenuseid ühendada, olenevalt teie ülesannetest ja olemasolevatest riistvararessurssidest.
  • Programmide paketid. Üldotstarbelised tarkvarakomponendid ja funktsioonide teegid levitatakse ja installitakse pakettide kujul. Käesoleval hetkel sisaldab reposteoorium rohkem kui 450 paketti, mis pakuvad lahendusi alates graafilistest liidestest, multimeedia rakendustest ja võrgurakendustest kuni robotite juhtimissüsteemide ja masinõppel põhinevate töötlejate juurde. Pakettidega tarnitakse ka mootoreid programmide käitamiseks keeles Lua, JerryScript, MicroPython, PikaScript ja Rust (rtt_rust).

Platvormi omadused:

  • Toetatud arhitektuurid:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (toetatakse mikroprotsessoreid tootjatelt nagu 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.
  • Laienev moodulaarne arhitektuur, mis võimaldab luua keskkonda, mis sobib piiratud ressurssidega süsteemidele (minimaalsed nõuded — 3 KB Flash ja 1.2 KB RAM).
  • Toetatakse erinevaid standardliideseid programmide arendamiseks, näiteks POSIX, CMSIS, C++ API. Eraldi arendatakse RTduino kihti, et tagada ühilduvus Arduino projekti API ja teekidega.
  • Võimekus laiendada pakettide ja ühendatavate komponente süsteemi kaudu.
  • Toetatakse rakenduste arendust kõrge jõudlusega andmetöötluseks.
  • Paindlik energiahallussüsteem, mis võimaldab seadme automaatset üleviimist unerežiimi ja dünaamiliselt juhtida pinget ja sagedust vastavalt koormusele.
  • Toetatakse riistvara krüpteerimist ja dekodeerimist, pakkudes teeke erinevate krüptograafiliste algoritmidega.
  • Ühtne liides juurdepääsuks periferiaseadmetele ja lisaseadmetele.
  • Virtuaalne failisüsteem ja draiverite olemasolu selliste failisüsteemide jaoks nagu FAT, UFFS, NFSv3, ROMFS ja RAMFS.
  • Protokollide virn TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M jne.
  • Kauguuenduste ja paigalduse süsteem, mis toetab krüpteerimist ja digitaalset allkirja kinnitust, katkenud paigalduse jätkamist, taastumist riketest, muudatuste tagasiviimist jne.
  • Dünaamilistel kerneli lisamoodulitel põhinev süsteem, mis võimaldab eraldi kokku panna ja arendada kerneli komponente ning neid dünaamiliselt laadida vastavalt vajadusele.
  • Migite kolmandate osapoolte pakettide, näiteks Yaffs2, SQLite, FreeModbus, Canopen jne toetamine.
  • Omandatakse otse BSP-paketi (Board Support Package) kompileerimise võimalus, et toetada teatud riistvaraplatvorme ja laadida see plaadile.
  • Saadaval on emulaator (BSP qemu-vexpress-a9), mis võimaldab rakenduste arendamist ilma reaalse plaatideta.
  • Toetatakse standardseid kompilaatoreid ja arendustööriistu nagu GCC, MDK Keil ja IAR.
  • Arendatakse enda integreeritud arenduskeskkonda RT-Thread Studio IDE, mis võimaldab luua ja tõrkeotsida rakendusi, laadida neid plaatidele ja hallata seadistusi. RT-Threadi rakenduste arendamiseks on pluginaid ka Eclipse'i ja VS Code'i jaoks.
  • Kasutuses on Env konsooliliides, mis lihtsustab projektide loomist ja keskkonna seadistamist.

Among the changes in the new release:

  • Расширена поддержка разработки компонентов на языке Rust. Добавлены Rust-обвязки для потоков, мьютексов, семафоров, очередей сообщений, а также операций с памятью, временем и файлами. Реализованы компоненты для интеграции с SCons и Cargo. Обеспечено автоматическое определение целевых платформ ARM, AArch64 и RISC-V. Добавлены процедурные макросы для инициализации и регистрации команд.
  • Для микроконтроллеров Cortex-M включена поддержка стандарта Open Firmware c описанием периферии через Device Tree.
  • Добавлена поддержка VirtIO 1.2 с возможностью использования очередей пакетов, транспортов MMIO/PCI и синхронизации DMA. Добавлены VirtIO-драйверы 9P, crypto, RNG, SCMI и SCSI. Обновлены VirtIO-драйверы для сети, блочных устройств, консоли, устройств ввода и GPU.
  • Добавлен фреймворк DVFS (Dynamic Voltage and Frequency Scaling) для динамического управления частотой CPU и устройств. Обеспечена интеграция с прошивкой ARM SCMI для управления энергопотреблением. Улучшено управление кулерами.
  • Добавлена поддержка TEE-окружений (Trusted Execution Environment) и механизма обмена сообщениями RPMSG (Remote Processor Messaging).
  • Реализована поддержка Unix-сокетов.
  • Добавлена поддержка механизмов защиты беспроводных сетей WPA3, EA (Enterprise Authentication), WAPI, OWE и DPP.
  • Добавлена поддержка протокола синхронизации времени PTP (Precision Time Protocol).
  • Добавлен фреймворк Clock Time для работы со временем, поддерживающий высокоточные таймеры и синхронизацию времени по нескольким источникам. Новый фреймворк пришёл на смену ранее используемым компонентам ktime, cputime и hwtimer,
  • Реализована файловая система 9PFS, применяемая для обмен файлами между хост-окружением и виртуальными машинами.
  • В реализации легковесных процессов lwP (Lightweight Process) появилась поддержка архитектуры ARM и добавлена поддержка механизма vDSO (virtual dynamic shared object), позволяющего перенести обработчики из ядра в пространство пользователя и избежать переключений контекста.
  • В ядре реализована поддержка 8- и 16-разрядных атомарных операций.
  • Добавлена поддержка симметричной мультипроцессорности (SMP) для RISC-V процессоров серии XuanTie C/R и эмулятора QEMU virt64.
  • Обновлён USB-стек CherryUSB 1.6.1.
  • Добавлены новые DM-драйверы (Device Manager) для UFS, AHCI, NVMe, Ethernet, Intel HDA, джойстиков и сенсорных экранов.

Allikas: opennet.ru

Osta usaldusväärne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid 🔥 Osta usaldusväärne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid - ProHoster