RT-Thread 5.3 бодит цагийн үйлдлийн системийг ашиглах боломжтой

RT-Thread 5.3 буюу Internet of Things төхөөрөмжүүдэд зориулсан бодит цагийн үйлдлийн систем (RTOS) худалдаанд гарлаа. 2006 оноос хойш Хятадын хөгжүүлэгчдийн нийгэмлэгийн хөгжүүлсэн энэхүү хувилбарыг одоо x86, ARM, MIPS, C-SKY, Xtensa, ARC, болон RISC-V архитектур дээр суурилсан 155 самбар, чип, микроконтроллер руу шилжүүлсэн. RT-Thread (Nano)-ийн минималист хувилбарыг бүтээхэд ердөө 3 KB Flash болон 1.2 KB RAM шаардлагатай. Хязгааргүй нөөцийн хязгаарлалттай IoT төхөөрөмжүүдийн хувьд багцын менежмент, тохируулагч, сүлжээний стек, GUI багцууд, дуут удирдлагын систем, DBMS, сүлжээний үйлчилгээ, скрипт хөдөлгүүрийг дэмждэг бүрэн боломжит хувилбар байдаг. Кодыг C хэл дээр бичиж, Apache 2.0 лицензийн дагуу түгээдэг.

Үйлдлийн систем нь гурван үндсэн давхаргаас бүрдэнэ.

  • Бодит цаг хугацаанд даалгавруудыг гүйцэтгэдэг цөм. Цөм нь түгжээ болон өгөгдлийн синхрончлолын удирдлага, даалгаврын хуваарь, урсгалын удирдлага, дохионы зохицуулалт, мессежийн дараалал, таймерын удирдлага, санах ойн менежмент зэрэг салбаруудыг хамарсан ерөнхий үндсэн командуудыг өгдөг. Тоног төхөөрөмжийн онцлог шинж чанаруудыг libcpu болон BSP түвшинд хэрэгжүүлдэг бөгөөд үүнд CPU-г дэмжихэд шаардлагатай драйверууд болон кодууд багтдаг.
  • Цөмийн дээд талд ажилладаг, виртуал файлын систем, онцгой тохиолдлуудыг зохицуулах систем, түлхүүр/утга хадгалах сан, FinSH командын мөрийн интерфейс, сүлжээний стек (LwIP) болон сүлжээний хүрээ, төхөөрөмжийг дэмжих номын сан, дууны дэд систем, утасгүй стек, Wi-Fi, LoRa, Bluetooth, 2G/4G-г дэмжих бүрэлдэхүүн хэсгүүд. Модульчлагдсан архитектур нь таны даалгавар болон техник хангамжийн нөөцөөс хамааран бүрэлдэхүүн хэсгүүд болон үйлчилгээг холбох боломжийг олгодог.
  • Програм хангамжийн багцууд. Ерөнхий зориулалтын програм хангамжийн бүрэлдэхүүн хэсгүүд болон функцын сангуудыг багц хэлбэрээр тарааж суулгадаг. Одоогийн байдлаар уг сан нь GUI, мультимедиа болон сүлжээний программуудаас эхлээд роботын удирдлагын систем, машин сургалтын процессор хүртэлх 450 гаруй багцыг багтаасан байна. Багцууд нь Lua, JerryScript, MicroPython, PikaScript болон Rust (rtt_rust) дээр программуудыг гүйцэтгэх ажлыг зохион байгуулах хөдөлгүүрүүдийг өгдөг.

Платформын онцлогууд:

  • Архитектурын дэмжлэг:
    • ARM Cortex-M0/M0+/M3/M4/M7/M23/M33 (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 (Фулхан).
    • MIPS32 (Loongson, Ingenic).
    • RISC-V RV32E/RV32I[F]/RV64[D] (sifive, Canaan Kendryt, bouffalo_lab, Nuclei, T-Head, HPMicro).
    • ARC (SNOPSYS)
    • DSP (TI).
    • c-тэнгэр.
    • x86.
  • Хязгаарлагдмал нөөцтэй системд тохирох орчинг бүрдүүлэх боломжийг олгодог өргөтгөх боломжтой модульчлагдсан архитектур (хамгийн бага шаардлага - 3 KB Flash ба 1.2 KB RAM).
  • POSIX, CMSIS, C++ API зэрэг програм боловсруулахад зориулсан төрөл бүрийн стандарт интерфэйсүүдийн дэмжлэг. Тус тусад нь RTduino давхаргыг API болон Arduino төслийн номын сангуудтай нийцүүлэх зорилгоор боловсруулж байна.
  • Багц болон залгаасуудын системээр дамжуулан өргөтгөх боломжтой.
  • Өндөр хүчин чадалтай мэдээлэл боловсруулах програмыг хөгжүүлэхэд дэмжлэг үзүүлэх.
  • Төхөөрөмжийг унталтын горимд автоматаар оруулж, ачаалалаас хамааран хүчдэл, давтамжийг динамикаар удирддаг уян хатан тэжээлийн удирдлагын систем.
  • Шифрлэлт, шифрийг тайлах техник хангамжийн дэмжлэг, номын сангуудыг янз бүрийн криптографийн алгоритмаар хангах.
  • Захын төхөөрөмж болон нэмэлт төхөөрөмжид нэвтрэх нэгдсэн интерфейс.
  • Виртуал FS ба FAT, UFFS, NFSv3, ROMFS, RAMFS зэрэг FS-д зориулсан драйверуудын бэлэн байдал.
  • Протоколын стек TCP/IP, Ethernet, Wi-Fi, Bluetooth, NB-IoT, 2G/3G/4G, HTTP, MQTT, LwM2M гэх мэт.
  • Тоон гарын үсгээр шифрлэх, баталгаажуулах, тасалдсан суулгалтыг сэргээх, алдаа дутагдлыг сэргээх, өөрчлөлтийг буцаах гэх мэт шинэчлэлтүүдийг алсаас хүргэх, суулгах систем.
  • Цөмийн бүрэлдэхүүн хэсгүүдийг тусад нь бүтээх, хөгжүүлэх, шаардлагатай үед динамикаар ачаалах боломжийг олгодог динамикаар ачаалагдах цөмийн модулиудын систем.
  • Yaffs2, SQLite, FreeModbus, Canopen гэх мэт гуравдагч талын төрөл бүрийн багцуудыг дэмжих.
  • Тодорхой техник хангамжийн платформыг дэмжих бүрэлдэхүүн хэсгүүдтэй BSP-багцыг (ТУЗ-ийн дэмжлэгийн багц) шууд хөрвүүлж, самбарт байршуулах чадвар.
  • Бодит самбар ашиглахгүйгээр програм хөгжүүлэх боломжийг олгодог эмулятор (BSP qemu-vexpress-a9) байгаа нь.
  • GCC, MDK Keil, IAR зэрэг нийтлэг хөрвүүлэгч болон хөгжүүлэлтийн хэрэгслүүдийг дэмжих.
  • Аппликешн үүсгэх, дибаг хийх, тэдгээрийг самбарт байршуулах, тохиргоог удирдах боломжийг олгодог RT-Thread Studio IDE-ийн нэгдсэн хөгжүүлэлтийн орчинг хөгжүүлэх. RT-Thread хөгжүүлэлтийн залгаасуудыг Eclipse болон VS Code-д ашиглах боломжтой.
  • Төсөл үүсгэх, орчныг тохируулах ажлыг хялбаршуулдаг Env консолын интерфейс байгаа эсэх.

Шинэ хувилбарт гарсан өөрчлөлтүүдийн дунд:

  • Rust хэл дээрх бүрэлдэхүүн хэсгүүдийг хөгжүүлэх дэмжлэгийг өргөжүүлсэн. Thread, mutexes, semafores, message queues, мөн санах ой, цаг хугацаа, файлуудтай хийх үйлдлүүдэд Rust холболтуудыг нэмсэн. SCons болон Cargo-той нэгтгэх бүрэлдэхүүн хэсгүүдийг хэрэгжүүлсэн. ARM, AArch64, болон RISC-V зорилтот платформуудыг автоматаар илрүүлэх боломжтой болсон. Эхлүүлэх болон командын бүртгэлд зориулсан процедурын макросуудыг нэмсэн.
  • Cortex-M микроконтроллеруудын хувьд Төхөөрөмжийн модоор дамжуулан захын төхөөрөмжийн тайлбартай Open Firmware стандартын дэмжлэгийг идэвхжүүлсэн.
  • Пакет дараалал, MMIO/PCI дамжуулалт болон DMA синхрончлолыг ашиглах чадвартай VirtIO 1.2-ын дэмжлэгийг нэмсэн. 9P, crypto, RNG, SCMI болон SCSI-д зориулсан VirtIO драйверуудыг нэмсэн. Сүлжээ, блок төхөөрөмж, консол, оролтын төхөөрөмж болон GPU-д зориулсан VirtIO драйверуудыг шинэчилсэн.
  • Динамик CPU болон төхөөрөмжийн давтамжийн удирдлагын DVFS (Динамик хүчдэл ба давтамжийн масштаб) хүрээг нэмсэн. Цахилгаан хангамжийн удирдлагын ARM SCMI програм хангамжтай нэгтгэсэн. Сэнсний удирдлагыг сайжруулсан.
  • TEE (Итгэмжлэгдсэн гүйцэтгэх орчин) орчин болон RPMSG (Алсын процессорын мессеж) мессеж дамжуулах механизмын дэмжлэгийг нэмсэн.
  • Unix сокетуудад зориулсан дэмжлэгийг хэрэгжүүлсэн.
  • WPA3, EA (Enterprise Authentication), WAPI, OWE болон DPP утасгүй сүлжээний аюулгүй байдлын механизмуудын дэмжлэгийг нэмсэн.
  • PTP (Precision Time Protocol) цагийн синхрончлолын протоколын дэмжлэгийг нэмсэн.
  • Цагтай ажиллах, өндөр нарийвчлалтай таймер болон олон эх сурвалжийн хооронд цагийн синхрончлолыг дэмжих зорилгоор Цагийн Цагийн хүрээг нэмсэн. Шинэ хүрээ нь өмнө нь ашиглагдаж байсан ktime, cputime болон hwtimer бүрэлдэхүүн хэсгүүдийг орлоно.
  • Хост орчин болон виртуал машинуудын хооронд файл солилцоход ашигладаг 9PFS файлын системийг хэрэгжүүлсэн.
  • Хөнгөн процессуудын (lwP) хэрэгжилт нь одоо ARM архитектурыг дэмжиж, vDSO (виртуал динамик хуваалцсан объект) механизмыг дэмжиж байгаа бөгөөд энэ нь боловсруулагчдыг цөмөөс хэрэглэгчийн орон зай руу шилжүүлэх, контекст шилжихээс зайлсхийх боломжийг олгодог.
  • Цөм нь 8 ба 16 битийн атомын үйлдлүүдийг дэмждэг.
  • XuanTie C/R цувралын RISC-V процессорууд болон QEMU virt64 эмуляторт зориулсан тэгш хэмт олон процессор (SMP)-ийн дэмжлэгийг нэмсэн.
  • CherryUSB USB стекийг 1.6.1 хувилбар руу шинэчилсэн.
  • UFS, AHCI, NVMe, Ethernet, Intel HDA, joystick болон мэдрэгчтэй дэлгэцүүдэд зориулсан шинэ DM драйверуудыг (Төхөөрөмжийн менежер) нэмсэн.

Эх сурвалж: opennet.ru

DDoS хамгаалалт, VPS VDS сервер бүхий сайтуудад найдвартай хостинг худалдаж аваарай 🔥 DDoS хамгаалалттай, VPS VDS сервертэй найдвартай вэбсайт хостинг худалдаж аваарай | ProHoster